我有一个运行在Hyper-V(Win Server 2008 R2)主机上的SUSE实例。 初始安装很好。 设置了Apache,MySQL等之后,我closures了虚拟机并对其进行了快照(如果出现问题,我可以恢复)。
快照之后,系统将无法启动。
具体我得到….

如果我select“否”(不要尝试使用...-part1 ),它会将我转到我不熟悉( $ )的提示。 如果我回答是,它会等待-part1几秒钟,失败并使我回到相同的提示。
无论如何,我得到:
sh: cannot set terminal process group (-1): Inappropriate ioctl for device sh: no job control on this shell
我似乎有一个非常有限的工具集(大概是内置的shell命令?)
如果我做一个ls -al /dev/disk/by-id我得到以下几点:

我不知道如何继续 – 据我所知,硬盘被VM识别(否则,我不会得到这个),但它想要挂载的分区的ID是不正确的(请注意, 20202020部分之后列出的ID有所不同)。
我怎么能告诉Linux使用新的ID或(失败),改变Ids以匹配Linux所期望的?
附录:更多谷歌search后,似乎这可能是由于升级问题。 我确实使用YAST安装“重要”更新预重启,所以这也可能是原因。 当然,现在我不是100%确定正在运行的版本。 cat /proc/version结果在:

它看起来像你的快照改变了设备ID。 也许你无意中克隆了系统? 无论如何,这应该有所帮助:
在grub菜单(即你select启动哪个OS / Kernel的地方,通常也有一个rescue选项),移动光标停止它自动继续使用默认的optin。 然后select默认选项并添加root=/dev/sda1 。 按Enter,这应该启动。 在我的系统上,我可以以root身份(以文本模式)login。 编辑文件/boot/grub/menu.list和/etc/fstab ,用sdareplacedisk/by/id[...]-part每个disk/by/id[...]-part 。 这应该让你的设备名称像/dev/sda1 。 重新启动,一切都应该没问题。 你可能要考虑检查你的grub2configuration,这样kernelupdate不会破坏你的menu.lst。