CentOS7 の自動パーティションの実体を探っていきましょう。
下図は 8GBのディスク一本で CentOS7 を構築した際のディスクの状態です。
「devtmpfs」や「tmpfs」は “tmp” と名前にある通り一時領域です。例えば手動で / のみにディスクを全て割り振っても「devtmpfs」と「tmpfs」は存在することになるので、まずは気にしないでおきます。一応、参考リンクは載せておくので興味がある場合は確認してください。
- devtmpfs:/dev…Linux From Scratch | 7.3.デバイスとモジュールのあつかいについあつかいについて
- tmpfs:/dev/shm…日経xTECH | RAMディスク
- tmpfs:/run…Wikipedia | Filesystem Hierarchy Standard
- tmpfs:/sys/fs/cgroup…gihyo.jp | Linuxカーネルのコンテナ機能[2]cgroupとは?
- tmpfs:run/user/0…Redhat CUSTOMER POTAL | df に表示される tmpfs ファイルシステムの /run/user/1000 は何を意味していますか?
「/dev/mapper/centos-root」って???
そうなると気になるのが「/dev/mapper/centos-root」です。アカデミックに Linux を学んでいる場合、「/dev/sda1」は最初のディスクの第1パーティションで、第2パーティションは「/dev/sda2」なはずです。「/dev/mapper/centos-root」ってなんぞやって感じです。
これを理解するにはまず sda という名前のデバイスファイルを表示してみましょう。
すると下図のように確かに sda2 が存在していることがわかります。
つまりきっちり sda2 は存在しているわけですね。
となればますます「/dev/mapper/centos-root」ってなんぞや??という感じかもしれませんが、これは LVM で作成された論理ボリューム名です。
「/dev/mapper/centos-root」は LVM の論理ボリューム
CentOS7 の自動パーティションでは、boot 領域以外は物理パーティションではなく LVM が使用されます。つまり sda2 というパーティションを物理ボリュームとしてボリュームグループが作成され、「/dev/mapper/centos-root」という論理ボリュームが作成されたという事ですね。
ちなみに CentOS7 の自動パーティションは下図のように作成されます。
「/dev/mapper/centos-swap」と「/dev/mapper/centos-home」は無かったじゃん!と思われるかもしれませんが、まず「/dev/mapper/centos-home」は上図にもあるようにディスクの容量が少ないと作成されません。実際に試すと下図のようになりました。
「/dev/mapper/centos-swap」に関しては df で表示されないだけで、実際には作成されています。
ちなみに swap の容量は物理メモリのサイズに応じて変化します。試してみると下図のようになりました。
ただし、自動パーティションで swap が2GBしか用意されないと言って、手動でパーティショニングする際にも2GBにするのが正解かと言うと、そうでもありません。
Swap は、物理 RAM サイズが 2 GB までは、物理 RAM の2倍として、2 GB を超えると、1物理 RAM ごとに同量を追加します。ただし 32 MB を下回ることはできません。
極めて大容量の RAM (32 GB以上) を持つシステムでは、多分上記基準より少なめの swap パーティション (物理 RAM の 1 倍、またはそれ以下)で十分でしょう。
自動パーティション時のディスク構成図
最終的な自動パーティションの構成は下図のようになります。
例えば 100GB のディスク一本で自動パーティショニングを行った場合はこのようになります。