由于自己操作时习惯使用root用户的毛病,以后得改啊,自己一步小心把boot分区格了。我的系统分区是 :
/dev/sda1 : /boot
/dev/sda2 : swap 分区
/dev/sda3 : / 根分区
/dev/sda4 : /home
本来也没啥大事,把grub、linux(即内核软件包)重安装一遍就行了。
pacman -S linux grub
这样可以解决boot分区文件丢失的情况,如果你是boot分区文件损坏,那就直接执行上面的命令就可以了。。
但是我把/boot格式化了,也就是说分区的uuid已经变了,这样的话,系统启动的时候会导致依从/dev/sda3根分区/etc/fstab挂载时是不可能挂载boot分区的,这样内核什么的肯定不能找得到,boot没有挂载啊
这样的话,就从archlinux的cd光盘启动,
具体要做以下改变:
如果之前已经执行pacman -S linux grub ,那就直接挂载根分区,修改对应的/etc/fatab文件,修改里面的boot分区对应的UUID为正确的,查看uuid的命令:
ls -al /dev/disk/by-uuid
然后修改为正确的uuid就行了,开机启动不了的话就至少会进入grub的命令行,对应的grub命令可以参考grub官方的文档。
如果没有安装grub、linux软件包的话,也就是说boot分区为无内核、无压缩镜像、无grub配置的情况,那也有办法,查找linux,grub这两个软件包(具体在/var/cache/pacman/pkg/下),然后直接解压到boot分区,注意把内核、压缩镜像、grub配置(这个无关重要),放到boot分区根目录,然后修改uuid,重启就能按部就班的修复。
至于重启进入系统后就可以更新grub配置,恢复系统了。
原创博客:链接http://huaixiaoz.tk/?p=5
posted on
浙公网安备 33010602011771号