Blog.Yi

A blog posted by an user experience designer

这两天不安分,又想捣鼓电脑,正所谓不折腾不舒服斯基,又所谓不作就不会死,我果然把电脑整坏了。

背景:

笔记本有两块硬盘,一块是普通的SATA硬盘,700G左右;另一块是30G左右的SSD固态硬盘。之前笔记本买回来的时候,自带的Win7是默认安装在SATA的,而且整个700G的SATA就分了一个区。当时因为买了新电脑很开心,迫不及待就要玩起来,就默认了当时的配置。30G的固态硬盘就拿来装了些Adobe的程序。

后来,本着no zuo no die的精神,在30G的固态上面分了16G,装了个Ubuntu12.04走起来。由于是用wubi装的ubuntu,所以基本也没遇到什么大的问题,安装完毕重启,直接就可以选择从哪一个系统boot。俨然是形成了Win7+Ubuntu的双系统完美格局。

Ubuntu用wubi默认安装下root分区太小:

随着慢慢的使用,各种更新装起来,然后就悲剧了。前几个星期的一个周末,我突然发现我再也不能更新Ubuntu里的软件了,因为提示空间不足。经过各种折腾,我才发现了个中缘由。当初在安装ubuntu12.04的时候,我是直接默认安装,root(/)根目录只分配了7G左右的空间,随着使用,现在已经几乎塞满了,所有导致后来的一些更新无法安装。

用LiveUSB安装自定分区:

由于出现了前面的问题,觉得重装一次系统,这一次要自定义分区大小。上Ubuntu官网下了Ubuntu12.04和Universal USB Installer,做好LiveUSB,然后插入U盘,重启电脑,猛击F12,选择从USB进行引导(boot),然后安装,自己分区,分的大了点,以免以后不够用。安装完毕,重启。然后就傻逼了。

Win7+Ubuntu双系统下grub引导没有ubuntu:

什么傻逼了?因为重启之后,直接就进入了Win7。完全没有让我选择系统的页面,直接就进入了Win7。怎么回事?后来上网查阅了一下,发现这是一个普遍现象,win7+ubuntu的时候,ubuntu在完成安装后,往往都需要修复grub,否者无法引导,根本进不去ubuntu。

安装Ubuntu时如何分区?

经过大量的查阅资料,发现安装ubuntu的时候,硬盘分区也是有讲究了。除了基本的root(/)根目录,最还还分出一个引导分区(挂载点:/boot),另外分出一个Home分区(挂载点:/home)。内存不大的话,最后还分出一个交换空间,这次不再选EXT4的分区格式,而是选择“交换空间(swap)。特别注意一点,在硬盘分区的下面,还有一个选项,要选好引导分区,点开选择/boot所在的编号。编号在前面硬盘分区的地方可以查看,一般为sdXY的形式,X可能是a, b, c, d, e…….,Y可能是1, 2, 3, 4, 5, 6……….,这两个是系统自动分配的编号,每台电脑都不同。

重启,如果顺利进入boot选择画面,选择ubuntu,正常进入桌面,那么恭喜你,OK了。

但是我会这么顺利吗?答案是否定的。我依然不能进入ubuntu,因为根本就没有选择ubuntu的机会,说明grub依然有问题。后来尝试过多种办法修复,依然未果,直到找到了一篇老外写的文章(链接),按照里面提到的方法,才算修复了grub,能够正常的使用Win7+Ubuntu双系统了。

通过”Boot-Repair“修复Ubuntu的grub:

前面提到的老外文中所说方法,是先通过LiveUSB进入Ubuntu,在里面通过PPA安装”boot-repair“,然后通过这个程序,重建Grub。我的运气不错,grub修复了,通过新的grub我可以选择ubuntu或win7。但是排在第一位的系统变成了Ubuntu,Win7被排在了目录的后面。看起来似乎Ubuntu变成了主要的系统,而Win7变成了附加上去的第二个系统了。这次应该叫”Ubuntu+Win7双系统“。

通过Bumblebee关闭双显卡中的独显:

Ubuntu一直不太兼容双显卡,若不做处理,集显和独显会同时工作,增加耗电量和发热量。在网上找了找,发现安装Bumblebee可以强制关闭独显,从根本上解决了耗电发热问题。

Steam很坑爹:

后来想着找点游戏玩玩,就下了steam,然后下了一个网络游戏,登陆,卡,卡爆了。因为是一款3D的网络游戏,用集显有点吃了,于是想着有什么方法让steam运行时使用独显。后来也整了几个办法,但似乎都不起作用。又进了一次那个游戏,发现依然卡。于是就退出游戏。然后就傻逼了,退出游戏后,系统依然保持了游戏里的分辨率,比较低,还是4:3。这也太坑爹了。赶紧重启,然后就傻逼了。重启时选择ubuntu系统boot之后,直接就停留在一个左上角无限闪光标的地方,然后就再也进不去系统了,擦,gryb又坏了!

Ubuntu14.04可以解决双选卡问题:

上网看了看,发现最新的Ubuntu14.04有办法解决双显卡问题,于是重新做了Ubuntu14.04的LiveUSB,重启,安装,然后,彻底傻逼了。Grub彻底坏了。也许是因为之前在Win7下修复过grub,把什么东西写到了很根源的地方。导致每次启动的时候,都会出现grub Rescue的画面,然后就等着我rescue,可我哪会rescue啊。最最关键的是,这次不仅仅进步了ubuntu,就连Win7也进不去了,直接卡在grub rescue的地方。看来grub是彻底被我玩坏了。这里只能通过代码跟及其交流,上网查修复的代码,多次尝试未果。我整个人都不好了。

玩一把大的:

在无数次尝试,依然失败之后,我决定玩一把大的。通过LiveUSB登入Ubuntu,在里面把SATA硬盘上所有原本Win7下的有用的资料数据,全部拷贝到一个移动硬盘,然后重装Ubuntu,这次我把SATA整个格式化了,把Win7删掉了,这次我准备就做Ubuntu的独立系统。豁出去了。安装完毕,重启,我擦,还是grub rescue。

给跪了:

这次我跪了。我把Win7都删了,你就给我看这个?我整个人都彻底不好了。

大招:

到这里已经实在不行了,只好放出大招,找出买电脑随机附带的正版Win7盘,我觉得转回Win7,不玩Ubuntu了。希望这次能够修好我的电脑,修好grub。一番折腾之后,全新的Win7回来了,一切正常,重启了好几次,没有问题。电脑总算是活了,虽然ubuntu没有了,Win7也被我重装了,原本的软件全部都没有了。一炮回到解放前。

Boot从硬盘的一个扇区开始读取:

晚上睡觉的时候,我上网各种查看grub相关的文章,突然看到一篇文章中提到,系统启动后会从硬盘的第一个扇区寻找grub信息,然后boot相应的系统。那么是不是因为我还有残存的grub信息保存在SATA硬盘的第一个扇区?因为我的SATA在系统内排在SSD的前面,所以每次启动的时候都会从SATA开始读取,导致无法引导ubuntu?第二天起床,我决定再整一整ubuntu,我是在不甘心跑了一大圈,最后还是win7,而且原本的系统格式化了,整个大退步啊。于是,我把win7再次删掉,然后试着把/boot分区放在SATA第一个分区,SATA第二个分区放/home目录,然后把ubuntu的系统根目录(/)放在SSD固态硬盘上,独占整个SSD。安装完毕,重启,perfect,正常进入Ubuntu桌面,grub没问题了。

到头来,还是没弄明白Grub:

折腾了两天,原本的Win7+Ubuntu双系统格局被我整坏了,现在是Ubuntu单系统。好在目前不太需要用什么设计软件,平时也就上上网。Ubuntu足够了。装好Ubuntu14.04,又把双显卡的问题解决了一下,现在Ubuntu一切正常,用着很爽。

但是关于Grub的问题,依然没有弄明白,这方面的知识实在是有点过于专业,我这个门外汉,真心弄不明白。以后若真要装双系统了,再好好研究一下吧。

综上所诉,人啊,不作就不会死,no zuo no die,这是真理。

在公司打台球合适吗? arrow-right
Next post

arrow-left 如何在面试中present你的project?
Previous post

Leave a Reply

Your email address will not be published. Required fields are marked *