Centos

用非 xen 核心替換 xen 核心

  • October 2, 2013

我有一個 Xen 格式 (XVA) 的虛擬設備,我希望在另一個管理程序 (MS Hyper-V) 上執行它。到目前為止我做了什麼:

我已經使用 XenConvert 將 XVA 轉換為 OVF,這產生了一個 vhd 文件。我創建了一個新 VM 並將 vhd 附加到它。

虛擬機無法啟動,我認為這是因為它執行 xen dom0 核心。這是錯誤:

錯誤 13:無效或不受支持的可執行格式

我想我需要用非 xen 核心替換 xen 核心。我可以簡單地下載一個預編譯的核心(在哪裡?),使用 live cd 啟動,將它放在磁碟上並更改 grub.conf 嗎?

編輯:

嘗試 Doug O’Neal 的回答,我需要安裝 lvm2 (apt-get install lvm2) 並安裝 VolGroup00。之後我用 yum 安裝核心並將其複製到引導分區。我編輯了 grub.conf 並嘗試啟動。引導核心後系統掛起。有什麼建議麼?

掛在開機

編輯2:

將 grub 更改為使用 tty0 作為控制台(以前是 xvc0),現在更進一步,將首先解決該問題。編輯3:

根據@Nils 的回答,我已經更改了對 XEN 廣告的幾個引用。仍然需要更換核心,我認為這是我目前的問題:當我執行 yum install kernel 時,我觀察到以下錯誤:

錯誤打開/sys/block:沒有這樣的文件或目錄錯誤打開/sys/block:沒有這樣的文件或目錄警告:沒有為核心2.6.18-348.18.1.el5找到模組xenblk

我在 CentOS 錯誤跟踪器中發現了該錯誤:http://bugs.centos.org/view.php?id=2083 正如我嘗試過的那樣: mkinitrd -v –with=xenblk –omit-scsi-modules - -omit-raid-modules /boot/initrd-2.6.18-348.18.1.el5.img 2.6.18-348.18.1.el5 但失敗並顯示:

未找到核心 2.6.18-348.18.1.el5 的模組 xenblk,正在中止

XEN-Kernel 不是這裡的主要問題。您需要將 Hyper-V-disk-module 帶入 initrd。

之後,您需要刪除所有對 xvda(或類似)的引用,並在“舊”DomU 的引導載入程序、Grub 和 /etc/fstab 中將它們替換為 sda(或類似)。

對於 2.6.32 之後的核心,這簡直是小菜一碟——因為 Linux 主流包含這些模組。

在此之前,您必須為您的核心編譯這些模組。

是 Microsoft Technet 中關於該主題的一個很好的起點。

引用自:https://unix.stackexchange.com/questions/92746