我提前为问一个我认为非常非常简单的问题道歉。我刚刚获得了一台运行 Ubuntu 的专用服务器,并且我正在使用 SSH 访问它。我运行后sudo apt-get dist-upgrade
收到以下错误消息:“Grub 引导加载程序先前安装在不再存在的磁盘上,或者由于某种原因其通常唯一的标识符已更改。重要的是确保安装的 grub 与其他组件(例如 grub-cfg)或必须加载的较新的 linux 映像保持同步,因此您应该再次检查,以确保 GRUB 已安装到适当的引导设备上。”
由于我是新用户,论坛不允许我发布图片,但我上传了我在此处看到的截图:http://www.livingtheanswer.org/misc/grub.jpg
经过一番研究,我知道我需要安装到 /dev/sda。但是,我不知道如何选择该选项。我使用箭头键突出显示它,然后按 Enter,但没有用。我猜有些命令我不熟悉。有人能帮我吗?再次为这个愚蠢的问题道歉...
谢谢!
答案1
使用Spacebar! 这是在 ncurses 中选择的方法 :)
答案2
我从需要能够从 bash 脚本运行无人值守升级的角度来处理这个问题,而这个“ Grub 引导加载程序先前已安装到磁盘”破坏了这些问题。'
起初,我尝试遵循上述答案中的指导原则,即
sudo grub-install /dev/sda
sudo update-grub
不幸的是,这并不能解决问题——下次我这样做时,apt-get dist-upgrade
我会遇到同样的错误,并且我的升级脚本会中断。
解决方案似乎是运行
sudo dpkg-reconfigure grub-pc
并在出现提示时选择正确的磁盘 ( /dev/sda/
)。这样,下次我进行 dist-upgrade 时就不会再出现错误。
答案3
sudo grub-install /dev/sda
然后
sudo update-grub