我的虚拟机突然停止工作了。当我启动系统时,会出现以下消息。
然后任一初始化选项都会检索到与以下相同的错误。
我怀疑这是因为我的 VM 盒子存储空间不足,因为我收到了一条通知,告知空间不足(如果我没记错的话,还剩 500mb),但不幸的是我无法在 grub shell 上发出任何删除命令。
除了我的 www/ 文件夹之外,我不介意丢失整台机器,因此我想到了一些可能的解决方案,并且将不胜感激:
从机器中删除一些文件 - 仅限于 grub 的操作。设法将我的 www/ 文件夹恢复到另一个 Linux ubuntu 服务器。能够访问 cmd 并执行 apt-get autoremove - 或类似的操作。任何其他想法也受到欢迎(考虑到我现在所处的绝望状态)
答案1
GRUB shell 是严格只读的,因此它无法进行任何持久更改。所以删除 GRUB shell 中的东西的想法行不通。
屏幕截图中的消息看起来像是多个内核恐慌消息挤在一起。因为其中一行显示Lost 677 message(s)!
,所以第一条紧急消息(这可能是其他消息的根本原因)很可能已经滚出屏幕并且无法访问,即使您仍然可以使用Shift+ PgUp/PgDn滚动控制台显示。
正如评论中已经提到的,您可能会获得 live-CD 的 ISO 映像,将其上传到托管 VM 的系统,然后使用 VM 管理功能(在 VM 控制台中或在单独的 GUI 中)来将 ISO 映像“插入”虚拟 CD 驱动器并告诉 VM 从该驱动器启动。确切的细节将取决于所使用的虚拟化技术:如果您的虚拟机位于商业托管中,则托管提供商的技术支持应该能够为您提供帮助。
如果是廉价的商业托管,虚拟机可能仅限于使用有限数量的标准安装映像。在这种情况下,您可能必须创建第二个具有正常操作系统的虚拟机,然后使用虚拟机管理功能将虚拟系统磁盘与故障虚拟机分离,并将其(临时)作为新的正常虚拟机上的第二个磁盘呈现。这将允许您访问发生故障的虚拟机的磁盘:您只需将其分区安装到单独的位置即可。
例如,如果新的好 VM 自己的系统磁盘是/dev/sda
,并且来自坏 VM 的磁盘现在将显示为/dev/sdb
在好 VM 上,则您可以使用lsblk
或fdisk -l /dev/sdb
来识别分区,然后mkdir /rescue
从mount /dev/sdbN /rescue
坏 VM 的磁盘挂载分区 N以便/rescue
从中恢复数据,甚至识别并修复该磁盘上的任何问题。