Ubuntu VM 磁盘错误 - 首先变为只读,现在无法启动

Ubuntu VM 磁盘错误 - 首先变为只读,现在无法启动

我在 Mac OS X 主机上安装了 Ubuntu Server VM。很愚蠢的是,我没有这台 VM 的近期快照(这对我来说是个严峻的提醒)。

我的主机运行缓慢且不稳定 - 内存不足。在尝试更改虚拟机上的文件时,我收到一个持续的“文件系统为只读”错误(类似于此问题Ubuntu VM“只读文件系统”修复了吗?)。我关闭了虚拟机并重新启动了计算机,然后打开了虚拟机,没有运行其他应用程序。现在,当我尝试加载虚拟机时,启动屏幕上出现了许多错误,然后它冻结了:

comm init: bad extended attribute block (some numbers here)

我可以进入恢复模式,但没有修复 Linux 机器的经验。在恢复模式下或者其他情况下,我可以做些什么来尝试保存我的虚拟机?

答案1

回答我自己的问题,如上所述:

首先,我尝试使用 fsck 和下面这个有用的视频中包含的说明来恢复 Ubuntu 文件系统:

http://www.youtube.com/watch?v=twBf4MR5sh8

概括起来,它们是:

  • 假设您有文件系统问题,在挂载文件系统时无法修复:

    1. 下载 Ubuntu 桌面磁盘映像
    2. 将磁盘映像附加到虚拟机并将其设置为启动顺序中的第一个
    3. 启动 CD 并点击“试用 Ubuntu”
    4. 在 CD 版本中,从终端运行需要卸载文件系统的文件恢复命令(例如 fsck)

这修复了许多文件系统问题,但机器在启动时仍然挂起,而我没有时间进行 Linux 系统恢复 101。所以我决定看看从 Time Machine 备份恢复是否可行。

大致来说,这个过程如下:

  1. 将虚拟机的已知良好备份恢复到桌面
  2. 运行命令来更改已恢复虚拟机的 UUID。在我的 Mac 上,这是

    VBoxManage internalcommands sethduuid /path/to/my/restored/disk/image.vdi
    
  3. 在 VirtualBox 中,打开损坏机器的设置,转到存储,分离现有磁盘映像并附加恢复的磁盘映像
  4. 启动并屏住呼吸。

这种方法奏效了,尽管很多本该在那里的文件却不见了。幸运的是,我有这些文件的单独备份,因此能够在停机时间(呃,1.5 天)内恢复所有文件。

相关内容