刚刚安装完Ubuntu 14.10(win7硬盘安装,是真机上的双系统)兴奋的准备开始进入它的神奇世界了,但是开机的时候却出现了一串乱码,觉得可能存在问题。乱码中有一串英文字符/dev/mapper/cryptswap1,从swap字样可以看出应该是交换分区出了问题。虽然界面正常启动了,但是还是有点感觉不够完美。因此打算把这个问题解决掉。
虽然电脑正常开机,但是这并不代表没有问题,交换分区类似于虚拟内存,对系统的稳定性有非常大的作用。我自己实践的结果是,使用ubuntukylin(麒麟)如果存在这个问题,有两种情况,一是开机卡死在这里,只能通过长按电源键重新开机,重新开机后可以正常进入系统,再次重启又卡死在这里,二一种情况是,系统永远都卡死在这里,只能强制关机,无法进入桌面。因此,看来这个问题还是有点隐患的,必须解决。
网上找了很多资料,大部分都是先提供一个线索,那就是/etc/fstab文件,这是一个开机挂载命令文件,告诉ubuntu开机的时候要怎么挂载。这个文件通过sudo gedit打开之后,发现就是用/dev/mapper/cryptswap1来挂载swap的,所以才出现了我们开机时候的那个错误。
于是网上各种大虾说要用sudo blkid来 查看交换分区的UUID,再把这个UUID写到fstab里面代替一下即可,说什么UUID不一样,有的人甚至连win C:都搬出来了。实际上,通过blkid查看,swap根本没有UUID,为什么?因为开机启动的时候,swap分区没有被挂载。所以问题根本不在UUID,而在于swap分区本身存在问题。
关键点来了!我发现我的情况是:swap分区虽然在安装系统的时候予以了规定,但是重装系统仔细一看,才发现swap被强制“不”勾选格式化,所以swap这个分区虽然磁盘空间留下来了,但是实际上是没有格式化的,没有格式化怎么挂载怎么使用呢?所以根本的问题在这里。
接下来就是格式化swap分区,并且把它挂载上了。
Ubuntu有一个gparted分区软件,非常好用,可以帮我们解决这个问题。有的ubuntu上已经安装了,如果你输入sudo gparted返回错误,那么就是没有安装,使用apt-get install gparted安装吧。
但是gparted不能用当前的用户sudo gparted来执行,系统会提示你必须使用root才能进行gparted的操作。所以又要先解决root的问题,因为root用户默认情况下是没有设置密码的,需要你通过sudo passwd root来先设置密码。设置好密码后通过su root来切换到root用户,这个时候不需要使用sudo了,直接gparted命令就可以打开磁盘管理界面。
如果你对磁盘分区之类的比较熟悉,后面的操作应该没什么问题。你会发现在swap那个分区前面会有一个问号,因为这个分区没有被格式化,只需要鼠标右键格式化为linux-swap格式即可。格式化完成之后先点击上面的绿色√,格式化成功之后还没完,还要激活swap,激活这个概念不用说了吧,同样是鼠标右键,“启用交换空间”。
启用之后你发现前面多了一把钥匙,这下swap分区终于OK了,先不要关gparted,在swap上鼠标右键,信息,把UUID拷贝下来,没错,这个时候终于看到了所有人都在呼唤的UUID。这个时候在把这个UUID复制到/etc/fstab文件中,按照格式照葫芦画瓢处理好。
事情到这里就差不多了,我也不是一步一步边操作边写这篇文章,所以中间也有可能遗漏某些细节,但是这篇文章的主要提示点在于:swap还没有被格式化,所以根本无法挂载,也就无所谓UUID,那些文章都是扯淡。
到了这些关于ubuntu开机错误问题就得到了解决。