半日かけてpen4のサーバをi7マシンに移殖。
旧サーバはhdd2つで、一つが起動用(贅沢だw)、1つがlvmで作ったxen domUで動くサーバ本体。
単純にこの2つを新マシンに入れ替えて再起動、で行けるはずだった。が。しかし。
xen hypervisor
i386のhypervisorでamd64のカーネルを動かそうとしていて動かなかった。これは当たり前。
そしてamd64のhypervisorでamd64のカーネルを動かしたら動かなかった。なぜに?
結局、amd64のhypervisorでi386のカーネルの組み合わせのみ起動できた。
title Xen 4.1-amd64 / Debian GNU/Linux, kernel 3.2.0-4-686-pae root (hd0,0) kernel /boot/xen-4.1-amd64.gz module /boot/vmlinuz-3.2.0-4-686-pae root=UUID=hogehoge ro console=tty0 module /boot/initrd.img-3.2.0-4-686-pae
使っているカーネルとかのバージョンは上記の設定を見て察してください(ぉ
実際にはupdate-grubで生成したものですので上下にいっぱい付いてますが省略。
書いてみるとこれだけなのなw半日かかったのに。
hypervisorぐらい再インストールしたかったのだが、単なるディスク移動だけで時間かかりすぎたので後回し。
/etc/xen/server はこんな感じ
bootloader ="/usr/lib/xen-default/bin/pygrub" extra = "/boot/grub/menu.lst" root="/dev/mapper/rio-root ro" memory = 7168 name = "rio" vif = [ 'mac=xx:xx:xx:xx:xx:xx' ] disk = [ 'phy:sdc,xvda,w' ] vcpus=8
メモリとディスク名、cpu数を変更した。/dev/sdcはディスク丸ごとlvmのpvになっている
domU
amd64カーネルに変えた。
apt-get install linux-image-3.2.0-4-amd64
domUはあっさりamd64カーネルで動いた。
カーネルの再コンパイルをしようとしたのだが、amd64カーネルが作れなかった。
make-kpkg --revision=1.0 --initrd kernel-image --arch=amd64
で行けるはずなのだが,
dpkg-architecture: warning: specified GNU system type x86_64-linux-gnu does not match gcc system type i486-linux-gnu, try setting a correct CC environment variable make[2]: amd64-linux-gcc: Command not found
で動かなかった。amd64-linux-gccとかx86_64-linux-gnu-gccとか必要らしいがどこから入れるかわからない orz
これってもしかしてamd64でOSごと再インストールしないとダメとかって話?
今日は未解決のまま終了。
コメントを残す