ダウンロードする
proxmox へ ssh でログインし、wget でダウンロード
iso ファイルのディレクトリが
-
/var/lib/vz/template/iso
なので qcow2 は -
/var/lib/vz/template/qcow
に入れることにする
ディレクトリを作成、ダウンロードして解凍
mkdir -p /var/lib/vz/template/qcow
cd /var/lib/vz/template/qcow
wget wget ftp://ftp6.jp.freebsd.org/pub/FreeBSD/releases/VM-IMAGES/14.2-RELEASE/amd64/Latest/FreeBSD-14.2-RELEASE-amd64-zfs.qcow2.xz
xz -d FreeBSD-14.2-RELEASE-amd64-zfs.qcow2.xz
仮想マシンの入れ物を作成
VM を作成
名前を入力
VM ID は使っていない id を自動的に付与される。使われていない id を指定することも可能。
(今回は 101)
インストーラーは指定しない
「メディアを使用しない」を選択
OS の種類は Linux でも Other でも起動するようです
あとはデフォルトで
ディスクは削除する
CPU は host にする
メモリを指定する
ネットワークは後で自由にできるので適当に
ここではホストと同じインターフェースを 1つだけ指定しておく
確認画面
できた仮想マシンを確認
ディスクの情報を確認
qemu-img info <qcow2>
で情報を確認
root@hair:/var/lib/vz/template/qcow# qemu-img info FreeBSD-14.2-RELEASE-amd64-zfs.qcow2
image: FreeBSD-14.2-RELEASE-amd64-zfs.qcow2
file format: qcow2
virtual size: 6.03 GiB (6476791808 bytes)
disk size: 3.47 GiB
cluster_size: 65536
Format specific information:
compat: 0.10
compression type: zlib
refcount bits: 16
Child node '/file':
filename: FreeBSD-14.2-RELEASE-amd64-zfs.qcow2
protocol type: file
file length: 3.67 GiB (3938123776 bytes)
disk size: 3.47 GiB
仮想マシンにディスクをインポート
root@hair:/var/lib/vz/template/qcow# qm importdisk 101 FreeBSD-14.2-RELEASE-amd64-zfs.qcow2 local-btrfs
importing disk 'FreeBSD-14.2-RELEASE-amd64-zfs.qcow2' to VM 101 ...
transferred 0.0 B of 6.0 GiB (0.00%)
transferred 63.0 MiB of 6.0 GiB (1.02%)
transferred 127.2 MiB of 6.0 GiB (2.06%)
transferred 189.0 MiB of 6.0 GiB (3.06%)
...
transferred 6.0 GiB of 6.0 GiB (100.00%)
unused0: successfully imported disk 'local-btrfs:101/vm-101-disk-0.raw'
root@hair:/var/lib/vz/template/qcow#
仮想マシンにディスクを接続
起動順序を指定
VirtIO にチェックを入れ、一番上にドラッグ & ドロップ
ディスクを 100Gへ拡張
virtio0 を指定サイズへ変更
qm resize <VM ID> <ディスク名> <容量>
拡張や縮小の場合は容量の前に +や -を付ける。
root@hair:/var/lib/vz/template/qcow# qm resize 101 virtio0 100G
Image resized.
root@hair:/var/lib/vz/template/qcow# ls -lh /var/lib/pve/local-btrfs/images/101/vm-101-disk-0/disk.raw
-rw-r----- 1 root root 100G Dec 31 13:50 /var/lib/pve/local-btrfs/images/101/vm-101-disk-0/disk.raw
仮想マシンを起動
root でログイン (パスワード無し)
中の FreeBSD はディスクが拡張されていない
コンソールでの操作は面倒なので、ssh で接続する。
passwd で root パスワードを設定
ssh で root ログインを許可する
vi /etc/ssh/sshd_config
PermitRootLogin yes
sshd の自動起動を有効にし、起動する
echo 'sshd_enable="YES"' >> /etc/rc.conf
sh /etc/rc.d/sshd start
内部のパーティションは拡張されていない
root@freebsd:~ # gpart show
=> 34 12649917 vtbd0 GPT (100G) [CORRUPT]
34 345 1 freebsd-boot (173K)
379 66584 2 efi (33M)
66963 2097152 3 freebsd-swap (1.0G)
2164115 10485836 4 freebsd-zfs (5.0G)
vtbd0 の 4番目が 5.0GBytes
拡張する
vtbd0 の 4番目を拡張する
root@freebsd:~ # gpart resize -i 4 vtbd0
gpart: table 'vtbd0' is corrupt: Operation not permitted
何か壊れているっぽいのでリカバリーする
root@freebsd:~ # gpart recover vtbd0
vtbd0 recovered
エラーメッセージが表示されないので成功?
改めて拡張する
root@freebsd:~ # gpart resize -i 4 vtbd0
vtbd0p4 resized
root@freebsd:~ # gpart show vtbd0
=> 34 209715126 vtbd0 GPT (100G)
34 345 1 freebsd-boot (173K)
379 66584 2 efi (33M)
66963 2097152 3 freebsd-swap (1.0G)
2164115 207551045 4 freebsd-zfs (99G)
root@freebsd:~ #
ディスクはまだ拡張されていない
root@freebsd:~ # df -h
Filesystem Size Used Avail Capacity Mounted on
zroot/ROOT/default 4.3G 3.8G 556M 88% /
devfs 1.0K 0B 1.0K 0% /dev
/dev/gpt/efiesp 32M 647K 31M 2% /boot/efi
zroot/tmp 556M 428K 556M 0% /tmp
zroot/var/audit 556M 428K 556M 0% /var/audit
zroot/home 556M 420K 556M 0% /home
zroot/var/mail 556M 420K 556M 0% /var/mail
zroot/var/crash 556M 424K 556M 0% /var/crash
zroot/var/log 556M 532K 556M 0% /var/log
zroot/var/tmp 556M 424K 556M 0% /var/tmp
zroot/usr/obj 556M 420K 556M 0% /usr/obj
zroot/usr/ports 556M 420K 556M 0% /usr/ports
zroot/usr/src 556M 420K 556M 0% /usr/src
zfs も拡張されていない
root@freebsd:~ # zpool list
NAME SIZE ALLOC FREE CKPOINT EXPANDSZ FRAG CAP DEDUP HEALTH ALTROOT
zroot 4.50G 3.82G 699M - 93.5G 10% 84% 1.00x ONLINE -
autoexpand フラグを有効にして自動的に拡張してもらう
デフォルトでは有効ではない
root@freebsd:~ # zpool get autoexpand zroot
NAME PROPERTY VALUE SOURCE
zroot autoexpand off default
autoexpand を有効にする
root@freebsd:~ # zpool set autoexpand=on zroot
root@freebsd:~ # zpool get autoexpand zroot
NAME PROPERTY VALUE SOURCE
zroot autoexpand on local
zfs を拡張する
root@freebsd:~ # zpool online -e zroot vtbd0p4
root@freebsd:~ # zpool list
NAME SIZE ALLOC FREE CKPOINT EXPANDSZ FRAG CAP DEDUP HEALTH ALTROOT
zroot 98.5G 3.82G 94.7G - - 0% 3% 1.00x ONLINE -
root@freebsd:~ # df -h
Filesystem Size Used Avail Capacity Mounted on
zroot/ROOT/default 95G 3.8G 92G 4% /
devfs 1.0K 0B 1.0K 0% /dev
/dev/gpt/efiesp 32M 647K 31M 2% /boot/efi
zroot/home 92G 420K 92G 0% /home
zroot/tmp 92G 428K 92G 0% /tmp
zroot/var/tmp 92G 424K 92G 0% /var/tmp
zroot/var/audit 92G 428K 92G 0% /var/audit
zroot/var/crash 92G 424K 92G 0% /var/crash
zroot/usr/ports 92G 420K 92G 0% /usr/ports
zroot/var/log 92G 544K 92G 0% /var/log
zroot/var/mail 92G 420K 92G 0% /var/mail
zroot/usr/obj 92G 420K 92G 0% /usr/obj
zroot/usr/src 92G 420K 92G 0% /usr/src
成功🎉