ほぼ雑記的メモ
ホストであらかじめbridgeやtapを作っておく
/etc/rc.conf:
cloned_interfaces="tap0 bridge0" autobridge_interfaces="bridge0" autobridge_bridge0="re0 tap*" ifconfig_bridge0="up"
diskイメージを作成しmdconfigでmd0にattachしてパーティションなどをつくっていく
# truncate -s 10G diskdev # mdconfig -a diskdev # gpart create -s gpt md0 # gpart add -b 40 -s 64K -t freebsd-boot -l boot0 md0 # gpart add -s 1G -t freebsd-swap -l swap0 md0 # gpart add -t freebsd-ufs -l disk0 md0 # gpart bootcode -b /boot/pmbr -p /boot/gptboot -i 1 md0
ファイルシステムの作成/マウント/コピー
# newfs /dev/md0p3 # mount /dev/md0p3 /mnt # tar cfzp - -C /SOURCE-DIR . | tar tvfp - -C /mnt
guestを起動させるには /etc/fstabを設定する必要がある。tarでパッケージを展開しただけやjailからコピーした場合は/etc/fstabは存在しないので作ってやる必要がある。
先程gpartで作成したパーティションでは
というラベルがついているので次のように書いておけばよいだろう
/mnt/etc/fstab:
/dev/gpt/disk0 / ufs rw 1 1 /dev/gpt/swap0 none swap sw 0 0
/etc/rc.confにて sshd等を起動するようにしておかないと淋しいことになるので、設定をしておく。自分の環境ではこんな感じ。
hostname="test" ifconfig_vtnet0="DHCP" ifconfig_vtnet0_ipv6="inet6 accept_rtadv" sshd_enable="YES"
bhyveをコマンドラインから起動したあとにその端末を consoleとするように/etc/ttysを書換えておくとなんかあったときに楽
/mnt/etc/ttys:
console "/usr/libexec/getty Pc" vt100 on secure
作業が終了したので /dev/md0を unmountする
# umount /mnt
vmrun.shを使って起動してみる(/usr/share/example/bhyve/の下にある)
# ./vmrun.sh -d diskdev vm0
こんな感じに起動した
Powered by Red Leaf ( Rev. c78c769f2 ), © Issei Numata, 2007-2021