我在台式电脑上安装了 11.10,但在尝试启动时,BIOS 屏幕后出现黑屏。在安装 11.10 之前,我能够在硬盘上运行 10.04.04,并且我还能在我的 USB 闪存盘和 CD ROM 上使用 11.10。我尝试在启动之前拔下所有 USB 设备,并从 11.10 升级到 11.10。在 BIOS 屏幕上按住 Shift 键不允许我访问 GRUB 菜单以尝试:
突出显示第一个条目,按“e”编辑它。导航到单词“quiet splash”,删除它们并在其位置输入“nomodeset”(不带引号)。按 Ctrl + X 继续启动。进入桌面后,转到系统 > 管理 > 附加驱动程序并激活推荐的驱动程序。
因此,在我的 pendrive 上运行 11.10 时,我尝试编辑 /etc/default/grub,通过在 GRUB_HIDDEN_TIMEOUT 设置前面放置一个“#”来注释掉该设置以显示 grub 菜单,并将 GRUB_TIMEOUT 设置设置为大于或等于 1 的值,例如 GRUB_TIMEOUT=10。
但是,当我运行时sudo update-grub
,我得到:
/usr/sbin/grub-probe: error: cannot find a device for / (is /dev mounted?)
我使用 update-grub 后得到了同样的错误:
sudo mount /dev/sda1 /mnt
之后:
sudo grub-install --root-directory=/mnt /dev/sda
reboot
sudo update-grub
修复 update-grub 问题的其他建议:
打开 synaptic,然后清除所有相关的 grub 安装包并重新安装 grub-pc,最后:sudo update-grub
或者使用 Grub Customizerhttp://ubuntuforums.org/showthread.php?t=1195275
解决这个问题的最佳方法是什么?我担心清除“所有相关的 grub 安装包”,但如果确实有些文件已损坏,这似乎是必要的。此外,在运行 grub-update 之前,我是否执行了正确的命令,即使用 mount 和 grub-install?
答案1
运行 Boot-Info(以前称为 Boot-Repair,安装说明这里)解决了这个问题。在 Boot-Info 中,我选择了 Advanced options->GRUB options。我选择了“Add a kernel option:”,并acpi_osi=
从旁边的下拉菜单中选择使内核不响应 osi 查询(如建议的那样这里因为某些 BIOS 包含针对特定 Windows 版本的修复程序,可能无法与其他操作系统兼容)。
我单击了“编辑 GRUB 配置文件”,它加载了 /mnt/boot-sav/sda1/etc/default/grub。在这个文件中,我设置了GRUB_CMDLINE_LINUX_DEFAULT=""
,删除了它的quiet splash
值以在启动时显示启动消息(splash
启用带有压缩文本输出的启动画面,quiet splash
结果只显示启动画面图像),#
在前面放了一个GRUB_HIDDEN_TIMEOUT
以显示 grub 菜单,并设置 GRUB_TIMEOUT=10
为给用户 10 秒钟的时间进行选择。我不记得了,但这些更改可能已经从我之前尝试编辑问题中描述的 GRUB 配置时进行了。
有关 Grub2 的更多详细信息:https://help.ubuntu.com/community/Grub2
您还可以在高级选项->主选项中调整“取消隐藏启动菜单”的时间。该时间保留默认值 10 秒。默认情况下还选择了“重新安装 GRUB”。在高级选项->GRUB 位置中,默认设置为“sda1”,表示“默认启动操作系统”,并选择了“将 GRUB 放置在所有磁盘中(没有操作系统的 USB 磁盘除外)”。
我点击“应用”,在 Boot-Info 运行完成后重启电脑。我在 BIOS 中更改了硬盘的启动顺序(我的 USB 驱动器被列为硬盘,因此我会根据要登录的驱动器调整顺序),然后在 Grub 菜单上按“Enter”。启动消息出现后,登录屏幕出现。Grub 菜单出现 10 秒后,系统也会自动启动。