5: 2013-05-19 (日) 11:08:58 iseki |
現: 2022-02-18 (金) 15:49:43 iseki |
| - http://www10.atwiki.jp/noel1008/pages/44.html#id_b2b002a6 | | - http://www10.atwiki.jp/noel1008/pages/44.html#id_b2b002a6 |
| #br | | #br |
| + | ** Rokcy Linux 8.5 (2022/2/17) [#d17bae5d] |
| + | |
| + | *** br0 の作成 [#c0fde3c4] |
| + | # nmcli con add type bridge con-name br0 ifname br0 |
| + | # nmcli con mod bridge.stp no |
| + | # nmcli con mod br0 bridge.stp no |
| + | # nmcli con mod br0 ipv4.method manual ipv4.address "202.26.150.50/24" ipv4.gateway "202.26.150.254" ipv4.dns "202.26.144.11" |
| + | # nmcli con mod br0 autoconnect yes |
| + | # nmcli con add type bridge-slave ifname ens10f0 master br0 |
| + | # nmcli con down ens10f0 |
| + | # vi /etc/sysconfig/network-scripts/ifcfg-ens10f0 |
| + | NBOOT=no |
| + | |
| + | *** Install [#p7c59867] |
| + | # export VM_NAME=rocky-8.5 |
| + | # virt-install \ |
| + | --name ${VM_NAME} \ |
| + | --hvm \ |
| + | --arch x86_64 \ |
| + | --os-type linux \ |
| + | --os-variant centos7.0 \ |
| + | --vcpus 2 \ |
| + | --ram 2048 \ |
| + | --disk path=/opt/vm/images/${VM_NAME}.img,format=qcow2,size=50 \ |
| + | --network bridge=br0 \ |
| + | --graphics vnc,keymap=ja \ |
| + | --noautoconsole \ |
| + | --location /opt/iso/Rocky-8.5-x86_64-boot.iso |
| + | #br |
| + | |
| + | ** OLD [#u00f7f08] |
| *** Create [#lff9c573] | | *** Create [#lff9c573] |
| # qemu-img create -f qcow2 /data/websystem-0.img 30G | | # qemu-img create -f qcow2 /data/websystem-0.img 30G |
| # qemu-kvm -hda /data/websystem-0.img -m 1024 -boot d -cdrom /root/CentOS-6.4-x86_64-bin-DVD1.iso -k ja -vnc :0 | | # qemu-kvm -hda /data/websystem-0.img -m 1024 -boot d -cdrom /root/CentOS-6.4-x86_64-bin-DVD1.iso -k ja -vnc :0 |
| + | |
| + | - -vnc :0 がリモートコントロール接続用ポート番号を示す. オフセットは 5900 (-vnc :1 なら 5901) |
| + | #br |
| + | |
| + | *** リモートコントロール用クライアント [#e0f0304e] |
| + | - Ultra Vnc: http://www.uvnc.com/ |
| + | - Real Vnc: http://www.realvnc.com/products/vnc/ (Windows7で起動せず 2015/2/6) |
| #br | | #br |
| | | |
| - Host OS の tap インターフェイスは Guest OS 毎に必要 | | - Host OS の tap インターフェイスは Guest OS 毎に必要 |
| #br | | #br |
- | **** tap インターフェイスの起動と停止スクリプト [#a889f964] | + | **** tap インターフェイスの起動と停止スクリプト (ホスト側) [#a889f964] |
| - /etc/qemu-ifup | | - /etc/qemu-ifup |
| #!/bin/sh | | #!/bin/sh |
| - $1 には tap# が入る | | - $1 には tap# が入る |
| #br | | #br |
- | **** Macアドレスが変化しても,ネットワークインターフェイスを見失わない方法 [#bb7bbfac] | + | |
| + | **** Macアドレスが変化しても,ネットワークインターフェイスを見失わない方法 (ゲスト側) [#bb7bbfac] |
| - 最近のディストリビューションは NICのMacアドレスが変化すると,別のインターフェイスを作って対応させる.その結果,インターフェイスを見失う | | - 最近のディストリビューションは NICのMacアドレスが変化すると,別のインターフェイスを作って対応させる.その結果,インターフェイスを見失う |
| - 対策 | | - 対策 |
| #!/bin/sh | | #!/bin/sh |
| # | | # |
| + | |
| function get_interface_num() | | function get_interface_num() |
| { | | { |
| return 0 | | return 0 |
| } | | } |
- | | + | |
| + | |
| if [ ! -f "$1" ]; then | | if [ ! -f "$1" ]; then |
| echo "Not found image file $1 !!" | | echo "Not found image file $1 !!" |
| exit 1 | | exit 1 |
| fi | | fi |
| + | |
| IFNUM=`get_interface_num` | | IFNUM=`get_interface_num` |
| if [ "$IFNUM" = "" ]; then | | if [ "$IFNUM" = "" ]; then |
| exit 1 | | exit 1 |
| fi | | fi |
| + | |
| HWADDR=`/usr/local/bin/macgen.py` | | HWADDR=`/usr/local/bin/macgen.py` |
| if [ "$HWADDR" = "" ]; then | | if [ "$HWADDR" = "" ]; then |
| HWADDR="00:16:3e:00:00:$MACNUM" | | HWADDR="00:16:3e:00:00:$MACNUM" |
| fi | | fi |
| + | |
| MEM=$2 | | MEM=$2 |
| if [ "$MEM" = "" ]; then | | if [ "$MEM" = "" ]; then |
| MEM=1024 | | MEM=1024 |
| fi | | fi |
| + | |
| echo "macaddr = $HWADDR" | | echo "macaddr = $HWADDR" |
| echo "interface = tap$IFNUM" | | echo "interface = tap$IFNUM" |
| echo "memory = ${MEM}M" | | echo "memory = ${MEM}M" |
| echo "start qemu-kvm" | | echo "start qemu-kvm" |
| + | |
| /usr/libexec/qemu-kvm -hda $1 -m $MEM -k ja -vnc :${IFNUM} -net nic,macaddr=$HWADDR -net tap,ifname=tap${IFNUM},script=/etc/qemu-ifup | | /usr/libexec/qemu-kvm -hda $1 -m $MEM -k ja -vnc :${IFNUM} -net nic,macaddr=$HWADDR -net tap,ifname=tap${IFNUM},script=/etc/qemu-ifup |
| **** MACアドレスの自動生成 by [[RedHat カスタマーポータル>https://access.redhat.com/site/documentation/ja-JP/Red_Hat_Enterprise_Linux/5/html/Virtualization/sect-Virtualization-Tips_and_tricks-Generating_a_new_unique_MAC_address.html]] [#wa7bbc0e] | | **** MACアドレスの自動生成 by [[RedHat カスタマーポータル>https://access.redhat.com/site/documentation/ja-JP/Red_Hat_Enterprise_Linux/5/html/Virtualization/sect-Virtualization-Tips_and_tricks-Generating_a_new_unique_MAC_address.html]] [#wa7bbc0e] |
| # | | # |
| print randomMAC() | | print randomMAC() |
| + | #br |
| + | *** Error [#tf8b1bfc] |
| + | **** cpu0 unhandled rdmsr [#vd317aa5] |
| + | - デバッグメッセージなので無視しても良いらしい. |
| + | #br |
| + | |
| + | ***P2V by macsatou :-D [#s5b7d465] |
| + | 物理マシンから仮想マシンへまるっと移行.#br |
| + | 自宅サーバで実施した. |
| + | |
| + | ****手順1 [#d6412ca2] |
| + | 適当なBootCD等で対象マシンを起動.#br |
| + | DDコマンドを使って全体を抽出. |
| + | 以下例) 対象ディスクが/dev/sdaの場合 |
| + | # dd if=/dev/sda of=/tmp/output.img bs=10M |
| + | (CNTL+Tで進捗状況を見れる) |
| + | |
| + | ****手順2 [#ra4f848b] |
| + | 抽出したファイルをKVMの入った仮想化基盤へ何らかの方法で転送済とする. |
| + | # qemu-img convert -f raw -O qcow2 output.img kvm_ver_output.qcow2 |
| + | 変換後のファイルは無駄に大きい可能性もあるため、最適化. |
| + | # qemu-img convert -O qcow2 kvm_ver_output.qcow2 kvm_ver_output.qcow2.new |