现在电脑上装的ubuntu 11.10,还是以前啊刚接触linux时装上去的。当时连swap都不知道是什么,让选swap分区大小时,一下选了20G。。现在想想真是好笑。总共30G,swap分了20G,系统就剩10G了。。于是今天就发现硬盘不够用了。用到现在才不够用,看来我的ubuntu也不怎么常开机啊,:-)
上课间隙上网搜索加自己大胆乱搞,最终成功的把20G的swap变成了3g,剩下的就挂载到系统里了。下面是一天的收获。
一,关于系统引导(以及win下live装ubuntu后又格式化ubuntu分区导致无法引导的解决办法)
我首先想到的是格式化ubuntu分区,装新版的12.04。我的ubuntu是在windows下livecd安装的,引导是grub,这个文件是在ubuntu系统里存着的。上午的时候我还不知道系统的引导过程,不知的如果把30G的盘格式化后还怎么开机,于是就上网去查相关信息。收获还挺多的。现在对系统的启动过程是有了一些了解,总结一下。
名词解释:
mbr:硬盘主引导记录。硬盘的0柱头,0磁道,1扇区为主引导扇区,这里面放着主引导程序,分区表,硬盘有效标识组成。
系统的启动过程主要分一下几步:
1,bios启动,讲mbr读入内存中;
2,mbr执行,经一系列步骤加载我们平常看到的grub或其他系统引导程序;
3,经过grub启动系统。
上面三步只是一个大概过程,我现在还没法完全搞懂这个过程。这里我主要得到grub这个东西是通过mbr调用的,而mbr修复是个比较简单的过程,所以格式化后用pe修复就可以win开机了。
二,修改swap分区大小。
1,删除swaap分区。用livecd进入ubuntu安装程序,在选择安装模式时选择自定义,然后在后续步骤中直接删除20G的swap分区。
2,新建swap和ext4分区。上一步结束后,在刚删除的分区上点新建或者改变(记不清了。。),然后把大小设置为4G(swap大小,自定),格式 交换空间,ok。此时新的swap已经建立完毕,再把剩下的所有分区都新建为ext4格式,挂载到某一点即可。此时退出安装程序,正常开机。
3,激活swap分区(不知道这样说对不对,但是我就是这样理解的)。此时用 free -m 命令查看,会显示swap大小是0。现在虽然有了swap分区,但是系统还不认。还要进行一些操作才能正常使用。
首先,用 ls -al /dev/disk/by-uuid命令查看swap分区的uuid。在第二步中你应该是知道自己的swap分区名的,我的是/dev/sda7,找到次分区的uuid,记下来。然后,用文本编辑器打开/etc/fstab,你会看到在#swap was on。。这一行下面会有一行开头是uuid的数据,类似 “UUID=c76ccb97-0f77-4f7f-a14c-6ecc658a636f none swap sw 0 0”这样。把这一句话复制下来,粘贴到上一行的下面,把uuid改成你的swap的uuid,保存,重启电脑,OK,此时就成功把20G的swap变成了4G并归还系统16Gext4空间!