节点重启后,直接进入了grub命令行,没有正常引导进入系统
方法一:
1、查看分区:grub > ls 回车
会出现如下字样:
(hd0) (hd0,msdos9) (hd0,msdos8) (hd0,msdos7) (hd0,msdos6) (hd0,msdos5) (hd0,msdos2) (hd0,msdos1)
注:上面是我的分区设备,每个人可能不一样,但原理都是一样的。grub> find /boot/grub/grub.conf 也行
2、寻找ubuntu所在分区:
(就是寻找你的Linux系统是装在以上哪个分区里)
grub > ls (hd0,msdos1)/
若出现unknown filesystem字样,则尝试下一个……若出现的是你的ubuntu主文件夹下的文件夹和文件的名字,那就是的要找的分区了。
3、修改启动分区:(假如你找到的启动分区是hd0,msdos8)
grub >prefix=/boot/grub //grub路径设置
grub >set root=(hd0,msdos8)
grub >set prefix=(hd0,msdos8)/boot/grub
grub >insmod normal //启动normal启动
grub >normal
方法一,没有解决我的问题,输入后并没有进入ubuntu图形页面
方法二:
U盘做好16.04.2的启动盘,服务器引导进入到维护环境下做操作
1.打开终端,输入sudo fdisk -l,查看ID=83的分区,记录下sd[NUM],比如sda8。
2.如果上一步中存在多个ID=83的分区,自己想办法确定/分区所在的分区号,并且/boot也是和/分区挂载在同一个分区上,比如就是sda8。
3.输入sudo -i,获得root权限。
4.mkdir /media/tmp。
5.将/分区挂载到新建的目录mount /dev/sda8 /media/tmp。
6.如果以前的系统/boot是单独挂载的话,则需要找到/boot的分区如sda7,然后mount /dev/sda7 /media/tmp/boot。否则这一步直接跳过去。
7.接下来准备安装grub了,终端输入:grub-install --root-directory=/media/tmp /dev/sda。
8.如果看到Installation finished, no error occured之类的信息时表明已经成功了。
9.重启系统
10.开机进入系统
方法二,没有解决我的问题,重启后还是依旧进入grub命令行
方法三:
U盘做好16.04.2的启动盘,服务器引导进入到维护环境下做操作,发现了一下的错误
ubuntu@ubuntu:~$ sudo add-apt-repository ppa:yannubuntu/boot-repair
Cannot add PPA: ‘ppa:~yannubuntu/ubuntu/boot-repair’.
ERROR: ‘~yannubuntu’ user or team does not exist.
解决方案
进入该网站:Boot-Repair : YannUbuntu
单击"Technical details about this PPA"(“有关此PPA的技术详细信息”),然后从"显示sources.list条目:"中选择您的ubuntu版本,例如 bionic, xenial 等等。我的是ubuntu18.04.2对应叫做xenial
如果不知道代码名称,则在命令行运行如下命令:
lsb_release -sc
运行结果如下:
xenial
圈出来的可以看到,官网已经把16.04的PPA申请关闭了,最低的版本都得是18.04,这导致了能安装boot-repair。于是我想我准备用ubuntu18.04的系统,去给16.04系统安装boot-repair,操作如下:
1. 添加PPA
>>> sudo add-apt-repository ppa:yannubuntu/boot-repair
2. 更新包
>>> sudo apt-get update
3. 安装boot-repair
>>> sudo apt-get install boot-repair
4. 启动boot-repair
>>> sudo boot-repair
启动后按照截图的步骤继续操作
选择“是”
选择“确定”
选择“推荐修复”
选择“是”
选择“是”
按照提示,在新的终端中输入指令(再开一个命令窗口),复制,粘贴
继续复制,然后选择前进
然后修复完成后,会自动退出,init 6 重启服务器
第一次要先手动指定下引导,之后就不用再指定
我是通过方法三,解决了问题