Centos7
將 CentOS7 從 vmware 遷移到 Xen 後 /dev/centos/root 不存在
我正在將 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
它繼續啟動緊急外殼。
我認為問題出在磁碟的設備名稱上。在原始系統上,磁碟位於 /dev/sda。在新系統上是 /dev/xvda。使用安裝盤,我可以啟動到救援模式並掛載 /mnt/sysimage。我不知道如何解決這個問題。我能找到的唯一與設備名稱相關的文件在 /mnt/sysimage/boot/grub2/device.map 中。我嘗試將其更改為
(hd0) /dev/xvda
但這沒有任何區別。我認為邏輯磁碟管理器配置需要在某處更改。
我怎樣才能解決這個問題?我需要簡單的(ish)說明,因為我不是 Linux 專家,尤其是在啟動過程方面。
主要思想——你需要重新生成 initrd。
- 啟動進入linux救援
dracut -f
根據這篇文章呼叫。
不久前,我一直在使用 Starwinds V2V 轉換器https://www.starwindsoftware.com/converter來完成類似的任務。它支持多種虛擬機磁碟格式,並在轉換過程中進行內部硬體修補。還有一個選項可以在轉換期間啟用救援模式,它支持多個 VM 的批處理。它是免費的。
從字面上節省了我很多時間。試試看。