我刚刚在 Windows 7 旁边安装了全新的 Precise。我必须将 750GB 硬盘分开;/dev/sda
分别存放 Windows 分区和/dev/sdb
Ubuntu 分区。除此之外,这些都是全新安装的 Windows 7 和 Ubuntu 12.04。
每次启动时,Grub 都不会加载,而是进入黑屏,右上角有一个闪烁的(水平条)光标。但是,如果我启动,在 BIOS/POST 屏幕完成后立即按 Esc 键,查看 Windows 启动加载程序,然后按 Esc 键使其返回 BIOS 屏幕。在 BIOS 屏幕之后,grub 出现并且一切正常运行;我可以启动 Ubuntu 或 Win7。
我不想每次都要执行 Escape、Escape、Wait、Boot 技巧。我不知道哪里出了问题,也不知道我可以给你们提供什么信息来帮助诊断。我运行了,sudo update-grub
一切都正常。我尝试在行中添加标志nomodeset
,搜索了一下后我觉得这可能会有用。/etc/default/grub
GRUB_CMDLINE_LINUX_DEFAULT
我想问一下我该做什么才能修复这个问题?
编辑:我尝试更改启动顺序,以便 BIOS 中的两个驱动器(均标记为“内部硬盘”)都先尝试启动。我认为问题可能是每次启动时,BIOS 启动顺序都不同……我必须重置它。它似乎不稳定……但我也不确定如何修复它。
该机器既有传统 BIOS,也有 UEFI。它以“传统”模式为标准;因此它目前设置为通过传统模式启动。我现在已经重新安装了 Ubuntu,现在如果我在 BIOS/POST 启动屏幕结束时按下 Esc,它会带我进入 GRUB 菜单。否则它会自动加载 Windows。似乎 GRUB 现在是代理引导加载程序,除非我要求它打开引导加载程序,否则它不会自动启动。在我的其他机器中,它总是在 BIOS/POST 结束时自动启动。
编辑 2:使用 gparted,我刚刚查看了我的分区,似乎我的 linux-swap 分区目前被标记为我的 Ubuntu 安装的启动分区。我目前只有 2 个分区:一个是“ext4”,挂载点为“/”,标志为“ ”;另一个是“linux-swap”,挂载点为“ ”,标志为“boot”。
如果我将启动标志更改为“/”,则无法可靠地解决问题。 10 次启动后:
- 2 成功启动至 GRUB
- 5 直接启动至 Windows 7
- 3 启动时出现黑屏,光标悬空
进一步的研究让我认为这是 BIOS 无法以相同顺序可靠地启动硬盘或无法找到两个硬盘的问题。如果我要求它创建一个“启动菜单”,它有时会有 2 个“内部硬盘”条目,有时只有 1 个。此外,每次我打开它时,它创建的列表的顺序都会改变;因此它没有遵循一致的启动顺序。如果这不是 GRUB 的问题,我会报告。
EDIT3:在稍微更改“启动标志”后,我发现了一个模式。这台机器实际上有 3 个硬盘,2 个 SATA 750GB(“sda”和“sdb”)和一个 128GB SSD(“sdc”)。当我启动时,我认为它每次都是按以下顺序从其中不同的一个加载:“sda”(Windows 加载时没有启动加载程序)、“sdc”(带有光标的黑屏),然后是“sdb”(GRUB 加载,我可以选择加载 Windows 或 Ubuntu)。我认为问题在于试图告诉 BIOS 可靠地选择一个分区进行启动;而不是以 Ubuntu 安装的方式。
答案1
在稍微更改了“启动标志”之后,我发现了一个模式。这台机器实际上有 3 个硬盘,2 个 SATA 750GB(“sda”和“sdb”)和一个 128GB SSD(“sdc”)。当我启动时,我认为它每次都是按以下顺序从其中不同的一个加载:“sda”(Windows 加载时没有启动加载程序)、“sdc”(带有光标的黑屏),然后是“sdb”(GRUB 加载,我可以选择加载 Windows 或 Ubuntu)。
我无法确定它是从哪个设备启动的,但根据系统设置和我对驱动器设置方式的了解,这种模式是有意义的。
我认为问题在于试图告诉 BIOS 可靠地选择一个分区来启动;而不是以 Ubuntu 安装的方式。