こんにちは!サーバーエンジニアとLinuxユーザーの皆さん。
Linuxシステムが起動する際に、最初に参照する「宝の地図」があることをご存知でしたか?それが/etc/fstabファイルです。このファイルに一つでも誤った記述があると、サーバーは起動せず、「緊急モード(Emergency Mode)」という恐ろしい画面が表示されてしまいます。
本日は、実際の現場で使用されている(そして少しエラーが隠されている!)/etc/fstabファイルの例を詳しく見ていきながら、ファイルシステムマウントの原理から実務のヒント、そして致命的なミスを防ぐ方法まで、完璧に解説します。約10分だけ投資して、このファイルをマスターしましょう!

1. 🔍 /etc/fstabとは何ですか?
File System Tableの略であるこのファイルは、Linuxカーネルに「どのストレージデバイスを、どこに、どのような方法で接続(マウント)するか」を伝える設定ファイルです。
WindowsでUSBを挿すと自動的にD:ドライブが割り当てられるのとは異なり、Linuxはこのファイルに明記された規則に従って、起動時にハードディスクをディレクトリに接続します。
基本構文(6つのフィールド)
このファイルは、空白(Space)またはタブ(Tab)で区切られた6つのフィールドで構成されます。
| 順序 | フィールド名 | 意味 | 例 |
|---|---|---|---|
| 1 | Device | マウントするデバイス(UUIDまたはパス) | /dev/sda1 |
| 2 | Mount Point | 接続されるディレクトリの位置 | /, /home |
| 3 | FS Type | ファイルシステムの種類 | ext4, xfs |
| 4 | Options | マウントオプション | defaults |
| 5 | Dump | バックアップ(Dump)の有無(0または1) | 0(しない) |
| 6 | Pass | 起動時の整合性チェック順序 | 1(1番目) |
—
2. 📝 実際のコード行ごとの詳細分析
それでは、読者の皆様がお持ちになった実際のコードを一行ずつ顕微鏡で見ていきましょう。ここにはベストプラクティスと危険な設定が共存しています。
✅ Line 1: ルートパーティション(ベストプラクティス)
/dev/disk/by-uuid/8ee8caa8-cef0... / ext4 defaults 0 1
- デバイス名(UUID): /dev/sda1のような物理デバイス名の代わりに、UUID(Universally Unique Identifier)を使用しました。
- なぜこれが良いのでしょうか? ハードディスクのケーブル位置を変更したり、USBを追加したりすると、/dev/sdbが/dev/sdaに変わって起動できなくなる可能性があります。しかし、UUIDはディスク固有の住民登録番号のようなもので、決して変わりません。最も推奨される設定です。
- マウントポイント: / (システムの根となる最上位ディレクトリ)
- タイプ: ext4 (Linuxの標準ファイルシステム)
- Pass: 1 (ルートパーティションなので、最初にディスクチェックを実行します。)
✅ Line 2: スワップファイル(最新トレンド)
/swap.img none swap sw 0 0
- デバイス名: /swap.img
- 以前は、スワップ(仮想メモリ)のために別途パーティションを分割して使用していました。しかし、最近(クラウド、仮想化環境)では、このようにファイル形式でスワップを管理します。容量が不足してもファイルサイズを増やすだけで済むため、はるかに柔軟です。
- マウントポイント: none (スワップは特定のフォルダに接続されるのではなく、カーネルがメモリのように使用するため、位置がありません。)
- タイプ: swap
- オプション: sw (スワップとして有効化するという意味です。)
⚙️ Line 3: Vagrantセクション(自動化の痕跡)
#VAGRANT-BEGIN
...
#VAGRANT-END
- このサーバーは、Vagrantというツールで作成された仮想マシンです。
- このコメント間の内容は、人が修正してはいけません。Vagrantがホストコンピュータ(自分のPC)とフォルダを共有するために、設定を自動的に追加したり削除したりする領域だからです。
3. 🛠️ 実践!fstab修正時に必ず守るべき3つの戒め
fstabはシステムの心臓と繋がる血管のようなものです。誤って触ると致命的です。安全に修正する方法をお伝えします。
1️⃣ 修正前のバックアップは必須
常に元のファイルをコピーしておきましょう。
sudo cp /etc/fstab /etc/fstab.bak
2️⃣ UUIDを確認する方法
/dev/vdb1の代わりに安全なUUIDを使いたい場合は、blkidコマンドを使用してください。
$ sudo blkid
/dev/sda1: UUID="8ee8caa8-..." TYPE="ext4"
/dev/vdb1: UUID="1234abcd-..." TYPE="ext4" <-- 이 값을 복사해서 쓰세요!
3️⃣ 再起動前の「仮想マウント」テスト(最も重要 ⭐)
fstabを修正して、むやみに再起動しないでください!以下のコマンドで文法が正しいか事前に確認する必要があります。
sudo mount -a
- このコマンドを実行して何もメッセージが表示されず静かですか? 👉 成功(文法エラーなし)
- エラーメッセージが表示されますか? 👉 失敗(fstabを再度開いて誤字を修正してください)
- もし先ほど分析した/dev/vdb1の行をそのままにしてこのコマンドを実行していたら、すぐにエラーが発生していたでしょう。
4. 🚀 終わりに
今日私たちが確認したファイルは、単なる数行のテキストではありませんでした。
- UUIDによる安定したシステム構成
- スワップファイルを利用した柔軟なメモリ管理
皆さんのサーバーの/etc/fstabは大丈夫ですか?今すぐターミナルを開いて確認してみてください!
皆さんの安全で堅牢なサーバー運用を応援しています。🛡️
コメントを残す