「/(ルート)と /root の違いは? どこまでをルートFSに入れていいの?」
Linuxを触り始めると、似た用語が連発して混乱しやすい代表格がここです。
この記事では、Linuxサーバーの土台になる ルートファイルシステム の役割と中身を、FHS(Filesystem Hierarchy Standard)の考え方をベースに解説します。
なぜ「/home」や「/var」だけ別パーティションに切るのか、どこまでをルートに収めるのが安全か、現場での切り分けの基準まで踏み込んでまとめました。
この記事のポイント
・ルートファイルシステムとは /(ルートディレクトリ)を含む最上位のFS
・FHS(Filesystem Hierarchy Standard)でディレクトリ構成が標準化されている
・/bin /sbin /etc /lib /dev は起動に必須 → ルートに残す
・/home /var /tmp は別パーティション化で障害保守性を上げるのが鉄則
でも安心してください。プロのエンジニアはコマンドを暗記していません。
「現場で使える型」を効率よく使いこなしているだけです。
ルートファイルシステムとは何か(背景・原理)
Linuxのファイルシステムは、Windowsのように「Cドライブ・Dドライブ」と独立したツリーを並べる構造ではなく、すべてのファイルが/(ルート)を頂点とした1本の木にぶら下がる構造になっています。この
/(ルートディレクトリ)を格納している最上位のファイルシステムが ルートファイルシステム です。USB・ネットワーク・他パーティションをマウントするためのマウントポイントもすべて、このルートファイルシステム上のディレクトリとして用意されます。
混同しやすい用語との違いを整理しておきます。
・ルートディレクトリ:パス上の「/」そのもの
・ルートファイルシステム:「/」と、その直下にあるOS起動必須の領域を含むFS
・/root:rootユーザーのホームディレクトリ。ルートFSとは別物
FHS(標準)が定めるディレクトリ構造
ルートファイルシステム配下に置くディレクトリの種類と役割は、FHS(Filesystem Hierarchy Standard) という業界標準で定義されています。RHEL系・Ubuntu系を問わず、主要なLinuxディストリビューションはこの標準に沿った構造を採用しています。
ルートファイルシステムには、システム起動時に必要となる以下のディレクトリを必ず格納します。
| /bin, /sbin | システムに必要なコマンドやプログラム |
| /etc | 各種設定ファイル |
| /lib | ライブラリ |
| /dev | デバイスファイル |
/sbin ディレクトリに格納されています。これがなければ、起動時に各パーティションをマウントして1つのファイルシステムとして運用することができません。
ルートに残すべき5つのディレクトリの中身を見る
実機で中身を確認してみると、なぜ「起動に必須」と呼ばれるのかが直感的にわかります。[pakira@Tiger ~]$ ls /sbin | head -10 agetty badblocks blkid blockdev btrfs cfdisk chkconfig chrony clock consoletype # /sbin にはマウント・ファイルシステム・カーネル制御に必要なコマンドが並ぶ
なぜ /home や /var を別パーティションに切るのか
1. ルートが満杯になってもOSは生き残らせる
ルートファイルシステムが100%埋まると、Linuxはログイン処理・systemd・swapの管理すら満足にできなくなります。ログイン不能・SSH接続不能・最悪は再起動できなくなる、という事故が現場では本当に起きます。
これを防ぐため、データが膨らみやすい以下のディレクトリは別パーティションに切る運用が標準です。
・
/home:ユーザーのデータが増え続ける・
/var:ログ・メール・DBデータが蓄積される・
/tmp:アプリの一時ファイルで瞬間的に膨れるこうしておけば、
/var がフルになっても / 自体は健全で、rootログインしてログ整理できます。2. 復旧の単位を小さくする
ルートファイルシステムが破損した場合、最終手段はOS再インストールです。ルートを 可能な限り小さくしておく ことで、再インストールが必要になった時の影響範囲を「OS本体だけ」に限定できます。
ユーザーデータが入っている
/home や、Webサーバーのデータが入っている /var/www は別パーティションに切っておけば、ルート再構築後にマウントし直すだけで復旧できます。3. バックアップ戦略を分けられる
ルートFSは「OS本体+設定」、/home は「ユーザーデータ」、/var は「ログ・DB」と性質が違います。パーティションが分かれていれば、それぞれに合った頻度・方式(フル/差分/スナップショット)でバックアップを設計できます。
実機でマウント構成を確認する
今動いているサーバーが、どのディレクトリをルートに、どこを別パーティションにしているかはdf コマンドで一目瞭然です。[pakira@Tiger ~]$ df -h Filesystem Size Used Avail Use% Mounted on /dev/mapper/rhel-root 50G 12G 38G 24% / /dev/sda1 497M 170M 327M 35% /boot /dev/mapper/rhel-home 200G 42G 158G 21% /home /dev/mapper/rhel-var 100G 18G 82G 18% /var tmpfs 1.9G 0 1.9G 0% /dev/shm # /, /boot, /home, /var が別パーティションになっている例
それ以外の
/boot /home /var はすべて別パーティションで、起動時にルートにマウントされて1つのツリーとして見える、というのが Linux の構成です。トラブルシュート・実務Tips
「No space left on device」とルートFSの関係
このエラーが出た時、まず疑うのはルートファイルシステムの満杯です。# どのパーティションが満杯かを確認する # df -h # inode(ファイル数の上限)が枯渇しているケースもある # df -i
/var/log です。ログローテーションが止まっていて巨大化しているケースが現場では9割を占めます。「読み取り専用ファイルシステム」と表示された時
ルートファイルシステムが読み取り専用(read-only)に切り替わるのは、ディスク障害をカーネルが検知した時の自己防衛です。mount コマンドで現状を確認し、ハードウェア障害がないかは dmesg | tail で必ずチェックします。# mount | grep " / " # dmesg | tail -30
新規構築時のパーティション切りの目安
プロダクション用途で新しくサーバーを構築する時、推奨される配分の目安は以下のとおりです。あくまで目安なので、ワークロードに合わせて調整します。・
/:20~50GB(OS本体+アプリ)・
/boot:1GB(カーネルイメージ用、独立必須)・
/home:用途次第(マルチユーザー機なら全体の30~50%)・
/var:50~200GB(ログ・DBが入る場合は大きく)・
swap:物理メモリと同等~2倍本記事のまとめ
| 確認したいこと | コマンド |
|---|---|
| 各パーティションの使用量 | df -h |
| inodeの空きを確認する | df -i |
| マウント状況を確認する | mount | grep " / " |
| ルートが読み取り専用になった原因を見る | dmesg | tail -30 |
| ディレクトリ単位で容量を調べる | du -sh /var/log/* |
パーティション設計を間違えると、本番運用で必ずトラブルが起きます
ルートファイルシステムが満杯になり、SSHログインすらできなくなる事故は、現場では決して珍しくありません。
ネットの断片情報をコピペするのではなく、現場で通用する「サーバー設計の型」を体系的に身につけたい方へ、『Linuxサーバー構築入門マニュアル(図解60P)』を完全無料でプレゼントしています。
「独学の時間がもったいない」「プロから直接、現場の技術を最短で学びたい」という本気の方には、2日で実務レベルのスキルが身につく【初心者向けハンズオンセミナー】も開催しています。
3,100名以上が実践した「型」を無料で公開中
プロのエンジニアはコマンドを暗記していません。
「現場で使える型」を効率よく使いこなしているだけです。
その「型」を図解60Pにまとめた入門マニュアルを、完全無料でプレゼントしています。
登録10秒/合わなければ解除3秒 / 詳細はこちら
- 次のページへ:Linuxでファイルシステムを作成する方法|mkfsコマンドでext4・xfsをフォーマットする手順
- 前のページへ:プロセスの実行優先度を変更する方法|niceとreniceの使い方とPRI・NIの違い
- この記事の属するカテゴリ:【Linux入門】初心者のための基礎知識・講座へ戻る

無料メルマガで学習を続ける
Linuxの実践スキルをメールで毎週お届け。
登録は1分、解除もいつでも可。
登録無料・いつでも解除できます