启动 Ubuntu 失败:错误:尝试在磁盘“hd0”之外读取或写入

启动 Ubuntu 失败:错误:尝试在磁盘“hd0”之外读取或写入

我已经在 Western Digital 外置硬盘 (320GB) 中安装了 Ubuntu 12.10。这是完整安装,而不是实时 USB。

当我将它插入我的 HP 台式机时,我进入 BIOS 设置并从硬盘启动,一切都按预期完美运行。现在,它适用于我家里的每台电脑和笔记本电脑(全部是 HP),除了一台。我的 HP ProBook 4530s。

当我选择从 USB 启动时,我收到以下消息:

error: attempt to read or write outside of disk 'hd0'

现在,我已从笔记本电脑中移除硬盘,外部驱动器是唯一插入的驱动器。以下是屏幕上的消息截图。消息显示后,我导航到ls /(如下所示):

在此处输入图片描述

此后我尝试访问 下的其他文件夹ls /,例如,我尝试ls /boot进入 grub 文件夹。然后我收到与之前相同的消息:如下所示:

grub rescue> ls /boot

error: attempt to read or write outside of disk 'hd0'
grub rescue> _

我可以访问且不会再次收到消息的文件夹只有/home/run/usr

那么我该如何:

  1. 从 GRUB2(此屏幕)手动启动 Ubuntu
  2. 设置为自动启动 Ubuntu
  3. 如果可能的话,对这个问题进行解释

谢谢!

答案1

我花了好几天的时间研究这个问题,直到今天才找到答案。我想在这里发布解决方案,因为我发现我不太可能是唯一一个(这个问题有很多浏览量)。

我的答案在这里找到:http://www.linuxquestions.org/questions/linux-laptop-and-netbook-25/boot-problem-after-installing-ubuntu-11-04-kernel-panic-not-syncing-vfs-919143/

从 LiveCD 启动并修改 grub.cfg 以通过名称而不是 UUID 访问块设备对我来说是修复方法。这是暂时的……因为在我更新软件包后,它安装了一个 grub 更新,导致它损坏。我一直在摆弄 grub.cfg 试图重新修复它,但现在进展不大!希望有人能填写下一步。

答案2

抱歉回复晚了,但我最近也遇到了同样的问题。我修复了这个问题并发布了这篇文章,希望它能对遇到同样问题的人有所帮助。

就我的情况而言,这是由于 SATA 电缆故障造成的。更换电缆后问题解决。

更一般地说,通过查看其他答案和评论,我认为此消息可能是由以下原因引起的:一些Grub 访问硬盘时出现某种(硬​​件)问题。在索拉克的情况下,修改文件grub.cfg以通过名称而不是通过 UUID 来引用块设备有所帮助,但可能是由于某种原因,UUID 无法再读取。

无论如何,对于遇到此问题的人,我建议启动实时 CD 并使用 SMART 工具来检查硬盘是否存在问题以及问题类型。这就是我所做的;这个特别的答案让我开始。为了解释smartctl硬盘的 SMART 属性输出,维基百科关于 SMART 的文章非常有用。对我来说,UDMA CRC 错误计数暗示 SATA 电缆有缺陷,而电缆确实是问题的根本原因。

相关内容