将 CentOS7 从 vmware 迁移到 Xen 后 /dev/centos/root 不存在

Goo*_*ose 6 xenserver centos7

我正在将 CentOS 7 系统从 VMware Server 2 迁移到 XenServer 6.5。CentOS 系统是使用最小安装方式安装的。我使用 ovftool 按照此处的说明将 .vmdk 文件转换为 .img

https://www.mylesgray.com/virtualisation/using-vmwares-ovftool-convert-vmx-ova/

并使用 XenCenter 将其导入 XenServer。启动后,我收到以下错误:

dracut-initqueue[286]: Warning: dracut-initqueue timeout - starting timeout scripts
dracut-initqueue[286]: Warning: /dev/centos/root does not exist
dracut-initqueue[286]: Warning: /dev/centos/swap does not exist
dracut-initqueue[286]: Warning: /dev/mapper/centos-root does not exist
Run Code Online (Sandbox Code Playgroud)

它继续启动紧急外壳。

我认为问题出在磁盘的设备名称上。在原始系统上,磁盘位于 /dev/sda 上。在新系统上,它是 /dev/xvda。使用安装盘,我可以启动进入救援模式并挂载 /mnt/sysimage。我不知道如何解决这个问题。我能找到的唯一与设备名称相关的文件在 /mnt/sysimage/boot/grub2/device.map 中。我尝试将其更改为

(hd0)    /dev/xvda
Run Code Online (Sandbox Code Playgroud)

但它没有任何区别。我认为逻辑磁盘管理器配置需要在某处更改。

我怎样才能解决这个问题?我需要简单的(ish)说明,因为我不是 Linux 专家,尤其是在启动过程方面。

Net*_*ner 6

不久前,我一直在使用 Starwinds V2V 转换器https://www.starwindsoftware.com/converter来完成类似的任务。它支持多种虚拟机磁盘格式,并在转换过程中进行内部硬件修补。还有一个选项可以在转换过程中启用救援模式,它支持多个 VM 的批处理。而且它是免费的。

从字面上节省了我很多时间。试一试。

  • 我尝试过这个软件,虽然它比我尝试过的其他转换工具更加用户友好,但它在 CentOS 7 上仍然会导致相同的错误。 (3认同)

小智 4

Reddit 上也有同样的问题

\n

主要思想\xe2\x80\x94你需要重新生成initrd。

\n
    \n
  1. 启动进入linux救援
  2. \n
  3. dracut -f按照本文调用。
  4. \n
\n