私はxenを初めて使用しています(以前はkvmと完全仮想化vmで作業していました)
私は新しくインストールしました: amd64 と xen 4 をスクイーズします。
ここで、古い lenny 32 ビット domU をインポートします。
vm.cfg は次のとおりです。
kernel = "/boot/vmlinuz-2.6.26-2-xen-686"
ramdisk = "/boot/initrd.img-2.6.26-2-xen-686"
disk = [ 'phy:vxen/vm,sda1,w' ]
root = "/dev/sda1 ro"
カーネルと ramdisk の行にコメントを付けて、pygrub を追加しました。
bootloader = '/usr/lib/xen-default/bin/pygrub'
#kernel = "/boot/vmlinuz-2.6.26-2-xen-686"
#ramdisk = "/boot/initrd.img-2.6.26-2-xen-686"
VM が起動せず、grub 画面の後に次のメッセージが表示されます。
Error: (2, 'Invalid kernel', 'elf_xen_note_check: ERROR: Will only load images built for the generic loader or Linux images')
このvm内(古いサーバーで起動できます)Grubがインストールされています
vm:~# dpkg --list | grep grub
ii grub 0.97-47lenny2 GRand Unified Bootloader (Legacy version)
ii grub-common 1.96+20080724-16 GRand Unified Bootloader, version 2 (common files)
/boot には次のファイルがあります: initrd.img-2.6.26-2-xen-686 initrd.img-2.6.26-2-686 vmlinuz-2.6.26-2-686 vmlinuz-2.6.26-2-xen -686
猫 /boot/grub/menu.lst
## ## End Default Options ##
title Debian GNU/Linux, kernel 2.6.26-2-686
root (hd0,0)
kernel /boot/vmlinuz-2.6.26-2-686 root=/dev/sda1 ro quiet
initrd /boot/initrd.img-2.6.26-2-686
title Debian GNU/Linux, kernel 2.6.26-2-686 (single-user mode)
root (hd0,0)
kernel /boot/vmlinuz-2.6.26-2-686 root=/dev/sda1 ro single
initrd /boot/initrd.img-2.6.26-2-686
### END DEBIAN AUTOMAGIC KERNELS LIST
猫 /boot/grub/device.map
(hd0) /dev/sda
(hd1) /dev/sdb
新しいdom0で開始できるように、grub2とupdateをインストールしたかったのですが、update-grubが失敗しました
Searching for GRUB installation directory ... found: /boot/grub
warning: grub-probe can't find drive for /dev/sda1.
grub-probe: error: Cannot find a GRUB drive for /dev/sda1. Check your device.map.
私はlvmを使用しているので、これらの手順を試しました:
nano /boot/grub/device.map
(hd0) /dev/xvda
cd /dev
mknod xvda b 202 0
dpkg --configure -a
update-grub
Upgrade-grub はまだ失敗します。
とにかく、誰かが私の新しいスクイーズ dom0 でこの古い vm を実行する解決策を知っていますか?