Unix/qemu

qemuをコマンドラインだけでがんばる

とりあえず使う

  • イメージ作成
    • 50Gの空ディスクを作成
# qemu-img 
         -f qcow2      # イメージ種別
         disk.qcow2    # イメージファイル名
         50G           # イメージファイルサイズ
  • インストーラ起動
# qemu-system-x86_64 
         -enable-kvm     # KVMアクセラレータ有効
         -smp 2          # CPU2枚
         -m 4096         # メモリ4G
         -cdrom dvd.iso  # インストーラ
         disk.qcow2      # イメージファイル名

よく使うオプション(主観)

opt 説明
monitor -monitor telnet:127.0.0.1:9901,server,nowait qemu管理コンソールをローカルポートで公開
timer -rtc base=localtime,clock=host タイマー設定.ホストのタイマーを使う
vnc -vnc :0 vnc(5901ポート)で画面共有
nic -device nic,model=virtio,macaddress=52:54:00:00:00:01 virtioドライバのNICデバイス
tap -device tap,script=ifup,downscript=ifdown ホスト側の仮想NICデバイス.スクリプトでup/downする
usernet -device e1000,netdev=net0 仮想NICデバイス.e1000ドライバ
-netdev user,id=net0,hostfwd=tcp::8080-:80 仮想ユーザNIC.ホスト:8080を仮想:80へ転送する
hdd -drive file=disk.img,if=virtio,index=0 virtioドライバのHDDドライブ
usb-host -device qemu-xhci,id=xhci USBホストデバイス
tablet -device usb-tablet,bus=xhci.0 タブレットデバイス(vncのマウスカーソルを消せる)
storage -device usb-storage,bus=xhci.1,drive=usb USBメモリ
-drive if=none,file=usb.img,id=usb USBメモリドライブ(イメージファイルusb.img)

UEFIブート対応

  • UEFIに対応したBIOSイメージ(OVMFPre-builtイメージ)を取り寄せる
  • rpmを展開して「OVMF-pure-efi.fd」を取り出す
  • qemuのbiosオプションで起動
# qemu-system-x86_64 -enable-kvm -smp 2 -m 2048 -bios OVMF-pure-efi.fd



---
update at 2024/10/09 19:10:16

※注:当サイトは特定環境において確認できた事象のみを記述しています。他の環境での動作は一切保証しません。