Open2

yunibuild: FreeBSD環境をqemu上でどうにかしたい

okuokuokuoku

実はmacやWindowsでもqemuの9pfsが使えるようになっている。

https://github.com/utmapp/UTM

UTMの9pfs実装はどうしてるのか不明。。local実装がそのまま使えている?

https://github.com/arixmkii/qcw

qcwはlocal実装をNTFS attrを使うように拡張したパッチを用意している。...これyunibuildのqemuにそのうち当てないとな。。元々はpodman方面から来ている。

okuokuokuoku

起動と軽いセットアップ

  1. https://download.freebsd.org/snapshots/VM-IMAGES/15.0-CURRENT/amd64/Latest/ からqcow2イメージをDL
  2. 起動
  3. adduser で適当にユーザーを追加
  4. /etc/rc.d/sshd start でsshdを起動
  5. ログイン
  6. pkg でパッケージシステムをインストール
  7. pkg install git でGitをインストール

... リサイズしないと小さすぎてダメだな。。

リサイズ

qcow2をリサイズするとパーティションテーブルが CORRUPT 状態になる。先にrecoverが必要。

root@freebsd:/home/oku # gpart status
   Name   Status  Components
vtbd0p1  CORRUPT  vtbd0
vtbd0p2  CORRUPT  vtbd0
vtbd0p3  CORRUPT  vtbd0
vtbd0p4  CORRUPT  vtbd0
root@freebsd:/home/oku # gpart recover vtbd0
vtbd0 recovered
root@freebsd:/home/oku # gpart status
   Name  Status  Components
vtbd0p1      OK  vtbd0
vtbd0p2      OK  vtbd0
vtbd0p3      OK  vtbd0
vtbd0p4      OK  vtbd0
root@freebsd:/home/oku # gpart resize -i 4 vtbd0
vtbd0p4 resized

あとは growfs できる。

root@freebsd:/home/oku # growfs /
Device is mounted read-write; resizing will result in temporary write suspension for /.
It's strongly recommended to make a backup before growing the file system.
OK to grow filesystem on /dev/gpt/rootfs, mounted on /, from 5.0GB to 127GB? [yes/no] yes