本プロジェクト: Debian CUI (UTM/Apple Silicon) ディスクパーティション設定
このドキュメントは、「人生、宇宙、すべての答えを探すコードの旅」の本プロジェクトにおいて、Apple Silicon環境下のUTMでDebian CUIをゲストOSとしてインストールする際の、推奨されるディスクパーティション設定をまとめたものです。
想定されるシナリオ
- ホストOS: macOS (Apple Silicon)
- 仮想化ソフトウェア: UTM
- ゲストOS: Debian (ARM64 CUI版)
- ディスク暗号化: LUKS
- ボリューム管理: LVM
Debianインストーラーでの選択と設定
1. パーティショニング方法の選択
インストーラーのパーティショニング画面で、以下の選択肢を選びます。
- 「ディスク全体を使い、暗号化LVMをセットアップする」
2. LUKSパスフレーズの設定
- 任意の強固なパスフレーズを設定します。このパスフレーズは、仮想マシンの起動時に毎回入力が必要になります。
3. 論理ボリューム (LV) の調整(手動設定を推奨)
インストーラーが自動で提案する論理ボリューム構成は、本プロジェクトに対しては過剰な場合があるため、以下の構造になるように手動で調整することを推奨します。
推奨パーティション構成図
物理ディスク
└─── パーティション 1 (非暗号化)
* マウントポイント: /boot
* ファイルシステム: ext4
* サイズ: 500MB ~ 1GB
* 目的: システムのブートローダーとカーネルを格納します。OS起動に必須のため、暗号化は行いません。
└─── パーティション 2 (残りの全容量を物理ボリュームとして使用)
* 目的: LUKSによるディスク全体の暗号化層として機能します。
└─── LUKS暗号化ボリューム (例: /dev/mapper/cryptdisk)
└─── LVM ボリュームグループ (VG: 例: vg0)
├─── 論理ボリューム (LV: 例: root_lv)
│ * マウントポイント: / (ルート)
│ * ファイルシステム: ext4
│ * サイズ: 約 15GB ~ ( /boot と swap を引いた残りの大部分 )
│ * 目的: ゲストOS本体、インストールされるすべてのソフトウェア、およびDockerのイメージやコンテナデータ (/var/lib/docker など) を格納します。Docker環境の主ストレージとなるため、最大の容量を割り当てます。
└─── 論理ボリューム (LV: 例: swap_lv)
* マウントポイント: swap
* ファイルシステム: swap
* サイズ: 2GB ~ 4GB (または仮想マシンのRAMサイズと同等)
* 目的: 物理RAMが不足した場合の仮想メモリとして使用されます。この構成のメリット
- セキュリティ強化: ディスク全体がLUKSによって暗号化されるため、仮想ディスクイメージが不正に持ち出された場合でもデータが保護されます。
- 柔軟なディスク管理: LVMを使用することで、将来的に論理ボリュームのサイズを柔軟に変更したり、スナップショットを作成したりすることが可能になります(Docker Infrastructureの範囲では必須ではありませんが、学習要素として有効です)。
- Docker対応: Dockerのイメージやコンテナデータが格納される
/(ルート) ボリュームに十分な容量を割り当てることで、効率的なDocker運用が可能です。 - 学習機会: LUKSとLVMの組み合わせを実践することで、Linuxにおける高度なストレージ管理とセキュリティに関する知識を深めることができます。