![Ubuntu 16.04 update-grub 不更新 grub.cfg 但更新 menu.lst](https://linux22.com/image/891087/Ubuntu%2016.04%20update-grub%20%E4%B8%8D%E6%9B%B4%E6%96%B0%20grub.cfg%20%E4%BD%86%E6%9B%B4%E6%96%B0%20menu.lst.png)
在内核 4.4.0-22 上停留了一段时间后,我今天手动升级了,但发现 update-grub 不会更新我的 grub.cfg 文件,而是更新我的 menu.lst 文件。手动运行 grub-mkconfig -o /boot/grub/grub.cfg 后,它已更新,我有了新内核。这让我有点怀疑,于是我检查了我的 grub 版本:
Ii grub 0.97-29ubuntu68 amd64 GRand Unified Bootloader (Legacy version)
Ii grub-common 2.02~beta2-36ubuntu3.7 amd64GRand Unified Bootloader (common files)
Rc grub-legacy-ec2 0.7.7~bzr1212-0ubuntu1 all Handles update-grub for ec2 instances
Rc grub-pc 2.02~beta2-36ubuntu3 amd64 GRand Unified Bootloader, version 2 (PC/BIOS version)
由于某种原因,它似乎仍然使用 grub 而不是 grub2。我还可以从数据包管理器安装 grub2-common。现在,我该如何修复它,以便它使用正确的更新命令?我只需安装 grub2-common 吗?我问这个问题,因为我不太确定,也不想弄乱我的安装。至少在接下来的一个月里,我无法物理访问这台机器。最后,我想切换到 HWE 轨道以获得更当前的内核,但为此我想确保 update-grub 可以正常工作。
谢谢您的帮助!
答案1
清除旧的并重新安装新的到 sda
sudo apt-get purge grub grub-pc grub-common
sudo mv /boot/grub /boot/grub_backup
sudo mkdir /boot/grub
sudo apt-get install grub-pc grub-common
sudo grub-install --recheck /dev/sda
sudo update-grub