通常P2V或V2V都會用軟體,類似TrueImage之類可能還有Windows異機還原的功能,但是Linux就沒辦法,所以得要想辦法處理。
- 大部份情況都可用的方法:重建Linux的initrd。
請參考實地操作 P2V Cold Cloning 與 V2V 遷移與實地操作 P2V Hot Cloning 轉換。Weithenn寫得很清楚,以CentOS來說,就是用安裝光碟iso開機,進入rescue模式,偵測到原有的系統,會掛在 /mnt/sysimage ,此時再 「 chroot /mnt/sysimage 」 ,再使用 「mkinitrd –v –f initrd-2.6.18-274.el5PAE.img 2.6.18-274.el5PAE」指令,重新建立 Ramdisk 映像檔。 - 有時候不知道少了什麼,或者是自己編譯的核心,就是少了driver,無法使用上述方法。對此我有另一個偷吃步,此方法保證100%可用。
利用類似的版本安裝一個虛擬機 ,版本不一定要完全一致,只要相容就好,例如廠商的機器是CentOS 5.2,我就去抓CentOS 5.8,先安裝成新的VM,將VM driver也順便裝好,確定能正確執行。
接著同樣用rescue cd開機,我個人偏愛SystemRescueCD ,開起來設定網路,再到新VM把 /boot 裡 kernel和initrd等 tar 起來,還有 /lib/modules 也要。最後 scp到開不起來的VM,解開後,再修改 grub 設定檔。
留言