Walbrixのディレクトリ構造
用語
ブートパーティション
Walbrixの起動に使用されるパーティション。FATでフォーマットされており BIOS版及び EFI版の grubが格納されている。サイズは数GBで、OSイメージ(squashfs)もここに格納される。
データパーティション
ブートパーティションを作成した残りのディスクスペースを btrfsでフォーマットしたもの。ブートパーティションとデータパーティションは対となって同じディスク上に存在する。
/var/vm
仮想マシン及び「領域」(ボリューム)が格納されるディレクトリ。
領域とは仮想マシンを保存する場所のこと。Walbrixをインストールしたディスクには標準で default
領域が関連付けられる。それ以外の領域はディスクの増設により増えてゆく。
@から始まる名称のディレクトリは領域を意味し、何らかのパーティションがマウントされる。マウントは scan-volumes.service
によって起動時に行われるほか、wb volume scan
コマンドによっても行われる。
仮想マシン名
(通常@領域名/仮想マシン名
へのシンボリックリンク)- vm.ini (VM設定ファイル)
- system (システムイメージ)
- data (ブロックデバイス)
- fs (ファイルシステム)
- @default (デフォルトの領域。データパーティションの vm サブボリュームがマウントされる)
- @
領域名
(領域名で示される領域に対応するパーティションがマウントされる場所)- uuid (ここにマウントすべきパーティションのUUIDが書かれたファイル。マウントによって隠れる)
/run/vm
稼働中の仮想マシンに関連して自動生成されたリソースが格納される一時ディレクトリ
仮想マシン名
- boot.img (仮想マシンを起動するためのブートローダーが格納されたディスクイメージ)
- monitor.sock (QEMUの対話型インターフェイス)
- qga.sock (QEMU guest agentとの通信インターフェイス)
- qmp.sock (QEMU仮想マシンのコントロール用インターフェイス)
- serial.sock (仮想マシンのシリアルコンソール)
- virtiofs.sock (virtiofs用ソケット)
/run/initramfs
Walbrix独自のinitramfsにより起動時にsquashfs+overlayfsで構成されたルートファイルシステムのバッキング
- boot (ブートパーティション, FAT)
- system.img (OSイメージファイル, squashfs)
- system.cur (現在稼働中のOSイメージファイル, OSアップデートのため一時的にsystem.imgからリネームされたもの)
- system.bak (前のバージョンのsystem.img)
- system.ini (OS設定ファイル, initramfsにより読み込まれる)
- system.cfg (ブートローダー設定ファイル, grubにより読み込まれる)
- ro (system.imgをマウントしたもの)
- rw (R/Wレイヤ, データパーティションの rw サブボリュームをマウントしたもの)
- root (物理マシンのルートファイルシステムにオーバーレイされる upper layer)
- work (OverlayFS用workディレクトリ)
- swap (データパーティションの swap サブボリュームをマウントしたもの)
- swapfile (物理マシン用のスワップファイル)
- shutdown (initramfsによってマウントされたファイルシステムを完全にアンマウントするためsystemdがシャットダウン時に呼び出すプログラム)
/etc/walbrix
その他設定
- privkey (WireGuardの秘密鍵, 初回起動時に自動生成)
2021年9月30日 Walbrix Support