今回は以前書いたWindows化したさくらのVPSでの移行方法を多少修正して、Linux版でもイメージコピーで移行する方法を解説する。
Virtioで動いている仮想マシン上でKNOPPIXを使う場合は、こちらの記事も参照のこと
◆:前回と同じ
- ◆KNOPPIXを入手する(最新CD版を利用した)
- ◆DaemonTools or WinRARを入手する
- Skip
- KNOPPIXのISOイメージをDaemonToolsでマウントするかWinRARで開く。
CDの/KNOPPIXをVPSの/KNOPPIXとしてコピーする。
CDの/boot/isolinuxの中身をVPSの/KNOPPIXにコピーする。
- VPSのGRUB設定を追加する。
VPSの/boot/grub/menu.lstに追記して、KNOPPIXを起動できる様にする(最下行に追記)
title KNOPPIX
root (hd0,1)
kernel /KNOPPIX/linux ramdisk_size=100000 init=/etc/init ro
initrd /KNOPPIX/minirt.gz
デフォルトインストールのさくらVPSだと、hd0,0が/bootで、hd0,1が/なので、/KNOPPIXにアクセスする場合はhd0,1である。
- システムを再起動して、直ちにVNCコンソールを開く。
GRUBのスタート画面でカーソルキーか何か押すと選択画面が開く。 この時、先ほど追記したKNOPPIXがあるので、選んでEnter。
KNOPPIXが起動する。
※GrubからKNOPPIXを実行したとき Error 2: Bad file or directory type. が出る場合。
古いGrubでは、ext2fsのInode sizeは128までしか対応していないが、大きいパーティションはInode size 256で切られるために読み込みに失敗する。
この場合、isolinuxを/boot/KNOPPIXとしてコピーして、menu.lstを
root (hd0,1)
kernel (hd0,0)/KNOPPIX/linux ramdisk_size=100000 init=/etc/init ro
initrd (hd0,0)/KNOPPIX/minirt.gz
のように編集して、KNOPPIX本体はルートパーティションに、起動用のイメージのみbootパーティションに配置して起動することで対応できる。
GrubをGrub2等にアップグレードする方法もあるが、失敗したときに起動不能になるのでこちらの方法が良いと思う。
- ◆システムドライブのイメージを丸ごと新サーバにコピーする。
・ネットワークの設定
#ifconfig eth0 xxx.xxx.xxx.xxx netmask 255.255.254.0
#route add default gw yyy.yyy.yyy.yyy
#cat > /etc/resolv.conf
nameserver 8.8.8.8
ctrl+d
xxx.xxx.xxx.xxxはVPSの割り当てIPアドレス
yyy.yyy.yyy.yyyは指定されたデフォルトゲートウェイ
8.8.8.8はPublic DNS
KNOPPIXのターミナルから操作する場合
#dd if=/dev/sda | ssh -l hoge piyo.tld “dd of=/dev/sda”
hoge:新サーバのユーザ piyo.tld:新サーバのアドレス
ダイレクトにDD出来ない場合は、
#dd if=/dev/sda | ssh -l hoge piyo.tld “cat > /tmp/sda.dd”
みたいにすると、/tmp/sda.ddにイメージを保存できる。
イメージファイルをどこかのサーバに配置しておけば、クラウド風に複製イメージ起動も出来るだろう。
これで、旧サーバのディスクイメージを丸ごと新サーバに移すことが出来る。
LinuxでもKNOPPIXから行っているので、メインのLinuxが途中でファイルを書き換える心配がない。
移行後の環境では、
残りのHDD領域(通常/home)の設定
#fdisk /dev/vda
#mke2fs -j /dev/fdiskで確保したパーティション
ネットワーク設定修正
vi /etc/sysconfig/network-scripts/ifcfg-eth0
ディスクマウント設定修正
vi /etc/fstab
/dev/hdb1 /home ext3 defaults 0 0
↓
/dev/fdiskで確保したパーティション /home ext3 defaults 0 0
最低限、これらを修正する。
旧環境のhomeをコピーする場合は、
scp -p -r hoge@nnn.nnn.nnn.nnn:/home/* /home
※hoge:旧VPSのユーザ nnn.nnn.nnn.nnn:旧VPSのIP
で、旧VPSのhome以下を全て新VPSのhome以下にコピーする(旧VPSは通常起動状態で作業。 rootのsshを一時的に許可して、rootでコピーするのが楽)
ちなみに dd の進行状況を確認する場合には、 kill -USR1 をddのプロセスに送ると標準エラー出力に進捗が出る。
このサイトをこの方法で旧さくらのVPS 4GBから、新さくらのVPS 2GBに移行して動作確認済み。
(588)