CentOS6,CentOS7,kvmでvmをコピーする方法と、ネットワーク周りの設定
vmのコピー
ホスト機で以下コマンドを実行
virt-clone --original [ベースのvmの名前] --name [新しいvmの名前] --file /var/lib/libvirt/images/[新しいvmのイメージファイル名].img
MACアドレス確認
ホスト機で以下のコマンドを実行し、新しいMACアドレスを控える
sudo virsh domiflist [新しいvmの名前] Interface Type Source Model MAC ------------------------------------------------------- vnet1 bridge br0 virtio zz:zz:zz:zz:zz:zz
サーバー内の設定(CentOS6の場合)
ゲスト機でネットワーク情報を書き換える
vi /etc/sysconfig/network-scripts/ifcfg-eth0 ---------- #マックアドレスを上記のものに書き換え #uuidもuuidgenして出力されたものに書き換え #ipアドレスも新しいものに書き換え ----------
さらに、こっちのファイルも書き換える
vi /etc/udev/rules.d/70-persistent-net.rules -------------- # PCI device 0x8086:0x100e (e1000) (custom name provided by external tool) SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="xx:xx:xx:xx:xx:xx", ATTR{type}=="1", KERNEL=="eth*", NAME="eth0" # PCI device 0x8086:0x100e (e1000) SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="zz:zz:zz:zz:zz:zz", ATTR{type}=="1", KERNEL=="eth*", NAME="eth1" --------------
上記のようになっていて、eth0の方は元のVMのMACアドレスで、eth1の方は上記で確認したMACアドレスになっているはずなので、
eth0の方を削除して、eth1をeth0にする
サーバー内の設定(CentOS7の場合)
eth0イーサネット有効化、 ipアドレス変更 ネットワーク再接続 サービス再起動
nmcli c m eth0 connection.autoconnect yes nmcli c modify eth0 ipv4.addresses 192.168.0.100/24 nmcli c down eth0; nmcli c up eth0 systemctl restart network
再起動
reboot
再起動して完了
※virtualboxの複製の場合でもMACアドレス書き換え以下の手順は共通。