ata 失败命令:在 ESXi 下的虚拟化硬盘上读取 DMA

ata 失败命令:在 ESXi 下的虚拟化硬盘上读取 DMA

我在 ESXi 5 上的虚拟机中运行了一个 CentOS 6 Web 服务器。运行了大约 133 天后,我重新启动了它。现在它无法启动。它在这里挂了一段时间:

在此处输入图片描述

最后:

在此处输入图片描述

如果这是真正的硬盘,我会认为它快坏了,然后更换它。但这是一个虚拟化驱动器,我的其他虚拟机运行正常。有没有什么办法可以排除故障?

答案1

您没有说明为什么需要重启该虚拟机。
主机是否出现了严重问题,例如意外断电?

我会首先检查是否存在真正的硬件磁盘问题。尝试查看是否可以复制虚拟机而不会出现任何读取错误,或者复制现在是否可以正常启动。

其次,检查虚拟机中的硬盘定义是否发生了变化。查看虚拟机配置或 BIOS 中是否有任何错误参数,或者虚拟磁盘可能已满,需要扩大,甚至可能是虚拟机中的磁盘驱动程序已损坏。

如果您在过去 133 天内升级过 ESXi,请在早期版本上尝试此 VM。

最后,在过去的 133 天内,完全有可能某个故障损坏了虚拟机的磁盘并导致其无法启动,而您现在才发现这一点。如果是这种情况,您可能需要重新安装 CentOS 甚至重建虚拟机。

答案2

为了解决这个问题,我使用 ESXi CLI 手动克隆了整个虚拟机:

  1. 为新虚拟机创建一个新目录,将其命名为recover
  2. 使用此方法克隆磁盘,vmkfstools --clonevirtualdisk source.vmdk dest.vmdk将对磁盘进行厚配置。
  3. 复制该.vmx文件并编辑它以指向新磁盘(如果您重命名了它们)。

显然,精简配置的磁盘出了问题,克隆它们就可以解决问题。希望这对某些人有帮助。

相关内容