「ls コマンドで /etc とか /var とか出てくるけど、何がどこにあるかさっぱりわからない…」
この記事では、Linuxのファイルシステム構造(ディレクトリ構造)をわかりやすく解説します。Windowsの「Cドライブ」や「フォルダ」との違いを交えながら、各ディレクトリの役割を一つずつ丁寧に説明します。
ターミナルの基本操作に不安がある方は、先に「ターミナルの使い方と基本コマンド20選」をご覧ください。
Linuxのファイルシステムとは?
ファイルシステムとは、コンピューター上でファイルやフォルダを整理・管理する仕組みのことです。
Windowsでは「Cドライブ(C:)」「Dドライブ(D:)」のように、ドライブ文字でストレージを区別します。一方Linuxはすべてが「/(ルート)」という一つの起点から始まるツリー構造になっています。
| 項目 | Windows | Linux |
|---|---|---|
| 起点 | C: D: など | / (ルートディレクトリ) |
| 区切り文字 | ¥(バックスラッシュ) | /(スラッシュ) |
| 大文字・小文字 | 区別しない | 区別する(File ≠ file) |
| 拡張子 | 必須(.exe .txt など) | 必須ではない |
ルートディレクトリ「/」とは?
Linuxのすべてのファイルは「/」(ルートディレクトリ)を頂点とした木のような構造(ツリー構造)で管理されています。
/
├── bin/
├── boot/
├── dev/
├── etc/
├── home/
├── lib/
├── media/
├── mnt/
├── opt/
├── proc/
├── root/
├── run/
├── srv/
├── sys/
├── tmp/
├── usr/
└── var/
それぞれのディレクトリには明確な役割があります。順番に見ていきましょう。

主要ディレクトリの役割を解説
/bin ― 基本コマンドが入っている場所
ls・cp・mv・catなど、すべてのユーザーが使う基本的なコマンドの実体がここに入っています。/binは「binary(バイナリ)」の略です。
⚠️ 補足:Ubuntu 20.04以降などの現代的なLinuxでは、/binは/usr/binへのシンボリックリンク(ショートカット)になっています。コマンドの実体は/usr/binにありますが、互換性のため/binからも同じようにアクセスできます。
$ ls /bin
bash cat cp echo ls mkdir mv rm ...
/etc ― 設定ファイルの置き場所
システムやアプリケーションの設定ファイルが集まっています。インフラエンジニアが最もよく触る場所の一つです。
/etc/hosts:ホスト名とIPアドレスの対応表/etc/passwd:ユーザーアカウント情報/etc/nginx/:Nginxの設定ファイル/etc/ssh/:SSHの設定ファイル
/home ― ユーザーのホームディレクトリ
各ユーザーの個人ファイルが置かれる場所です。ユーザー名「user」なら/home/user/が作られます。ターミナルで~と表示されるのがここです。
$ ls /home
user yamada tanaka
$ echo ~
/home/user
/root ― rootユーザーのホームディレクトリ
管理者(root)専用のホームディレクトリです。一般ユーザーはアクセスできません。/home/rootではなく/rootにあることに注意してください。
/var ― 変化するデータの置き場所
「variable(可変)」の略で、システムが動作中に変化するデータが入っています。
/var/log/:ログファイル(syslog・auth.logなど)/var/www/:Webサーバーのドキュメントルート/var/tmp/:一時ファイル(再起動後も残る)
/tmp ― 一時ファイルの置き場所
一時的なファイルが置かれます。再起動すると中身が消えます。誰でも読み書きできるため、スクリプトの一時ファイル置き場としてよく使われます。
/usr ― ユーザー向けプログラムの置き場所
「Unix System Resources」の略。apt installでインストールしたソフトウェアの多くがここに入ります。
/usr/bin/:一般ユーザー向けコマンド(python3・gitなど)/usr/lib/:ライブラリファイル/usr/local/:手動インストールしたソフト
/dev ― デバイスファイルの置き場所
「device(デバイス)」の略。Linuxでは、ハードディスク・USBメモリ・キーボードなどのデバイスもファイルとして扱います。
/dev/sda:最初のハードディスク/dev/null:出力を捨てるときに使う特殊ファイル
/proc ― プロセス情報の仮想ファイルシステム
実際のファイルはなく、カーネルが動的に生成する仮想的なファイルシステムです。実行中のプロセス情報やシステム情報がここから取得できます。
$ cat /proc/cpuinfo # CPU情報
$ cat /proc/meminfo # メモリ情報
/mnt・/media ― マウントポイント
外部ストレージ(USBメモリ・外付けHDDなど)を接続したときの「入口」です。WSL2では/mnt/c/でWindowsのCドライブにアクセスできます。
$ ls /mnt/c/Users/ # WSL2からWindowsのユーザーフォルダを見る
/boot ― 起動に必要なファイル
OSを起動するために必要なカーネルやブートローダーが入っています。通常は触りません。
よく使うパスまとめ
| パス | 役割 | 使う場面 |
|---|---|---|
| /etc/ | 設定ファイル | Nginx・SSH・hostsの編集 |
| /home/ユーザー名/ | 個人ファイル | 日常的な作業全般 |
| /var/log/ | ログファイル | トラブルシューティング |
| /var/www/ | Webドキュメントルート | Webサーバー構築 |
| /tmp/ | 一時ファイル | スクリプトの作業ディレクトリ |
| /usr/bin/ | コマンド・プログラム | インストール済みソフトの確認 |
| /mnt/c/ | WindowsCドライブ(WSL2) | WindowsとLinuxのファイル共有 |
実際に確認してみよう
ターミナルを開いて、実際にディレクトリ構造を確認してみましょう。
# ルートディレクトリの中身を見る
$ ls /
# /etc の中身を見る
$ ls /etc | head -20
# /var/log のログ一覧を見る
$ ls /var/log
# 自分のホームディレクトリを確認する
$ echo $HOME
/home/user
まとめ:この記事で学んだこと
- Linuxのファイルシステムは「/」を頂点としたツリー構造になっている
- Windowsのドライブ文字とは違い、すべてが一つの起点から始まる
/etcは設定ファイル・/homeは個人ファイル・/var/logはログと覚えておこう- WSL2では
/mnt/c/でWindowsのCドライブにアクセスできる - 大文字・小文字は区別される(
Fileとfileは別物)
関連記事
- Linuxって何?Windowsと何が違うの?
- UbuntuとCentOSどっちを選ぶべき?初心者向け比較
- Linuxを無料で今すぐ試す5つの方法
- WSL2のインストールと初期設定【Windows完全対応】
- ターミナルの使い方と基本コマンド20選
▶ 関連記事:パスの概念を完全理解【絶対パス vs 相対パス】
▶ 関連記事:ファイルの中身を見る・検索する方法【cat/less/grep】
▶ 関連記事:ファイルの権限を理解する【chmod・chown完全解説】
📋 Linux入門チートシート完全版で全コマンドを一気に復習できます。



コメント