如果在重新启动之前激活了挂起,则硬盘驱动器无法启动。启动实时 USB/CD 修复了问题(暂时)

Usa*_*agi 7 live-usb power-management boot-failure 12.04 standby

我正在运行 12.04 64 位并使用 Win7 进行双启动,以供全面披露,尽管我怀疑这与我的问题无关。

引导加载程序(GRUB)经常无法加载,我将看到一个带有一条闪烁线的黑屏。这已经发生在十个电源周期中的八个我身上,我可以始终如一地修复它,但是,我不知道为什么会发生这种情况。

我当前的修复方法是启动一张 live CD(我已经尝试了 KNOPPIX 和 Ubuntu,结果相同),仅此而已。不知何故,用 Live CD 启动就足以“唤醒”我的硬盘。然后我重新启动,GRUB 又神奇地出现了。

那么发生了什么?是否有可能某个程序正在破坏我的 MBR 而 Live CD 正在恢复它?我怎样才能缩小可能性?谢谢。

额外的

这仍然是一个问题。我现在确信它与硬件无关,因为我在 Windows 上度过了上个月和几个启动周期,没有遇到任何问题。最近当我再次开始使用 Ubuntu 时,问题又开始了。

我更感兴趣的是弄清楚发生了什么,而不是实际解决问题。有什么工具、日志等我可以用来解开这个谜团吗?

更新

我现在可以始终如一地重现这个问题。似乎如果计算机在重新启动之前的任何时候进入挂起模式,问题就会出现。计算机进入和退出挂起模式就好了,但是当我重新启动系统时,它无法启动。我在挂起计算机之前和之后都尝试过这个命令:

sudo hdparm -I /dev/sda > hdsettings.txt
Run Code Online (Sandbox Code Playgroud)

然后我对这两个文件进行了比较,发现一件事发生了变化:在安全设置下冻结更改为未冻结。我不知道这意味着什么,但无论如何这是不同的。

Sch*_*ger 2

编辑:Grub 似乎没有错误,所以这个答案不适用。对不起。@Web-E 似乎走在正确的轨道上。

从 Live CD 启动。打开终端

sudo add-apt-repository ppa:yannubuntu/boot-repair && sudo apt-get update
Run Code Online (Sandbox Code Playgroud)

按 Enter 键 - 然后输入:

sudo apt-get install -y boot-repair && boot-repair
Run Code Online (Sandbox Code Playgroud)

然后打开启动修复。执行建议的维修。如果这不能解决问题,请将链接粘贴到此处以获取启动摘要。


Rod*_*ira 0

有两种情况可能导致此问题:GRUB 故障或 MBR 损坏。

纠正 GRUB 故障

在终端中输入以下内容:

sudo apt-get --reinstall install grub-gfxpayload-lists grub-pc grub2-common
sudo apt-get intall grub2
Run Code Online (Sandbox Code Playgroud)

修复MBR

安装 Grub 定制器:

sudo add-apt-repository ppa:danielrichter2007/grub-customizer
sudo apt-get update
sudo apt-get install grub-customizer
Run Code Online (Sandbox Code Playgroud)

启动 Grub 定制程序并转到“文件”>“安装到 MBR...”,然后选择“确定”。


所有这些应该可以解决您的问题,但如果没有解决,则可能安装 Ubuntu 的分区有坏块,这会影响 GRUB 加载。