Notebook

これは日々の作業を通して学んだことや毎日の生活で気づいたことをを記録しておく備忘録である。

HTML ファイル生成日時: 2024/12/21 11:44:57.596 (台灣標準時)

NVMM と QEMU と SPICE を使って仮想機械を操作する方法

NVMM と QEMU を使うと、 NetBSD で仮想機械を動かすことができるでござる。

VNC ではなく、 SPICE を使って guest に接続するには、以下のようにすれば よいようでござる。

SPICE のインストール

pkgsrc を使って SPICE をインストールするでござる。


# cd /usr/pkgsrc/sysutils/spice-gtk
# make install

仮想機械の起動

仮想機械を起動する際に、以下のオプションを与えるでござる。


/usr/pkg/bin/qemu-system-x86_64 \
  -accel nvmm \
  -cpu max -smp cpus=1 -m 2G \
  -display curses \
  -cdrom /vm/netbsd_12/NetBSD-10.0_STABLE-amd64.iso \
  -drive file=/vm/netbsd_12/netbsd_12.qcow2,if=none,id=hd0 \
  -device virtio-blk-pci,drive=hd0 \
  -object rng-random,filename=/dev/urandom,id=viornd0 \
  -device virtio-rng-pci,rng=viornd0 \
  -netdev tap,id=tap6,ifname=tap6,script=no -device virtio-net-pci,netdev=tap6,mac=0a:12:34:56:78:90 \
  -spice addr=localhost,port=5999,ipv4=on,disable-ticketing=on,seamless-migration=on

SPICE クライアントを使って仮想機械に接続する

spicy を使って、仮想機械に接続するでござる。


% spicy -p 5999

fig_202408/netbsd_nvmm_spice_00.png

通常の利用には、以下のようにすればよいようでござる。


/usr/pkg/bin/qemu-system-x86_64 \
  -accel nvmm \
  -cpu max -smp cpus=1 -m 2G \
  -display none \
  -drive file=/vm/netbsd_12/netbsd_12.qcow2,if=none,id=hd0 \
  -device virtio-blk-pci,drive=hd0 \
  -object rng-random,filename=/dev/urandom,id=viornd0 \
  -device virtio-rng-pci,rng=viornd0 \
  -netdev tap,id=tap6,ifname=tap6,script=no -device virtio-net-pci,netdev=tap6,mac=0a:12:34:56:78:90 \
  -spice addr=localhost,port=5999,ipv4=on,disable-ticketing=on,seamless-migration=on \
  -daemonize

参考文献



Frequently accessed files

  1. Computer___Python/20220518_0.html
  2. Computer___Network/20230726_00.html
  3. Misc___Taiwan/20240207_00.html
  4. Computer___Network/20230516_00.html
  5. Computer___FreeBSD/20220621_0.html
  6. Computer___Python/20220715_0.html
  7. Computer___Network/20230508_00.html
  8. Food___Taiwan/20220429_0.html
  9. Computer___Network/20240130_00.html
  10. Computer___NetBSD/20220817_3.html
  11. Computer___Python/20220410_0.html
  12. Computer___Network/20240416_00.html
  13. Computer___NetBSD/20230119_00.html
  14. Computer___Debian/20210223_1.html
  15. Computer___Python/20221013_0.html
  16. Computer___Python/20210124_0.html
  17. Computer___NetBSD/20220428_0.html
  18. Computer___NetBSD/20220818_1.html
  19. Computer___NetBSD/20240101_02.html
  20. Science___Math/20220420_0.html
  21. Computer___Python/20240101_00.html
  22. Computer___NetBSD/20220808_0.html
  23. Computer___TeX/20230503_00.html
  24. Science___Astronomy/20220503_0.html
  25. Computer___NetBSD/20230515_00.html
  26. Computer___Network/20220413_1.html
  27. Computer___NetBSD/20210127_0.html
  28. Computer___TeX/20231107_00.html
  29. Computer___Python/20220816_1.html
  30. Computer___Python/20230717_01.html


HTML file generated by Kinoshita Daisuke.