Docs · リファレンス

VM バンドル

マシンはフォルダ。中身、安全にコピーできるもの、コミットすべきもの。

1VMTool マシンは DB 行や opaque blob ではなく .vm 拡張のディレクトリ — inspect/copy/move 可。

dev.vm/
  config.json         定義 — コミット
  disk.asif           主ディスク、sparse
  snapshots/
    index.json
    a1c2/disk.asif

デフォルトは home のライブラリ。ONEVM_HOME で別場所 — 外付 SSD 等 — 全体が移動。

config.json

guest type、engine、CPU、memory、disk、network、shared folders、input/graphics。plain JSON。VC に定義を載せるならこれ。

1vm config dev
1vm get dev

定義と disk 分離 — 形 の共有は数 KB。同僚は 1vm create して自分の guest を入れる。

ディスク

sparse — guest 書込で成長、事前割当なし。256 GiB で 9 GiB 書込なら ~9 GiB。エンジンでファイル名異なる(形式違い)。1vm du が正直な数。

スナップショット

snapshots/ が木。各 snapshot は APFS clone — live disk とブロック共有し分岐するまで。新規はほぼゼロ追加。du が allocated/on disk/reclaimable 区別。

コピー

フォルダなので copy 可 — ただし 1vm clone 推奨。同 clone 原語で即完了:

1vm clone dev test
1vm clone dev test --full
1vm archive dev

実行中ファイルを編集しない

設定は 1vm set — 検証と live 適用。実行中に config.json 直編は host/guest 不一致の唯一の道。