如果硬盘顺序出问题,进入了grub命令行模式,可以通过下面命令Grub启动系统:
ls -l # 查root参数
set root='hd1,msdos2'
linux /boot/vmlinuz root=/dev/sdb2
initrd /boot/initrd.img
boot
启动系统后修改/boot/grub/grub.cfg,然后运行
sudo grub-install
在硬盘位置固定前不要运行update-grub,它会重新生成grub.cfg,把之前的修改覆盖。但在引导硬盘被移除后,系统重启如果进入了紧急维护模式,则需要重新运行update-grub来更正参数里的硬盘位置值。(不过好像更正了硬盘配置位置还是会进入紧急维护模式,不知道哪里还有问题怎么修复)
如果移动硬盘无法启动,可以尝试在另外一台Linux里启动,然后运行:
sudo update-grub
参考:update-grub vs. grub-install?
如果连Grub都没有进入,那么可以插入启动U盘,从U盘启动后,输入grub命令选择旧Linux系统进行启动。不过之后似乎需要在启动的时候选择External Device来启动Linux,而不是选择原来的Linux硬盘。这一点暂时不知道为什么。
修复swap分区
如果swap分区找不到,那么系统会等待180秒。我们只需要把/etc/fstab里的swap分区声明注释掉,系统就可以在几秒内进入,而不需要等待180秒。
启动菜单及调试信息
在Grub刚启动的时候,按ESC可以弹出启动菜单。在见到Logo和进度条的时候再按ESC可以进入字符界面看到具体加载信息。
评论