Linuxのディレクトリ構造とは?/etc・/var・/homeなどの役割を初心者向けに解説

  • URLをコピーしました!

前の記事では、grep・findコマンドを使ってファイルや文字列を検索する方法を学びました。

その中で、次のようなディレクトリが登場しました。

/etc /home /var /tmp

Linuxを初めて学習していると、

「/etcって何?」
「なぜログは/var/logにあるの?」
「WindowsのCドライブのようなものはないの?」

と疑問に感じるかもしれません。

Linuxでは、ファイルやディレクトリがバラバラに配置されているわけではありません。 「どのようなファイルを、どこに置くのか」がある程度決められています。

今回は、Linuxを操作するうえで重要なディレクトリ構造を学習していきましょう。

🐧 LINUX BEGINNER

この記事はLinux初級講座の一部です。 学習順を確認したい場合は講座一覧から確認できます。

Linux初級講座を見る →
LESSON GOAL この記事のゴール

Linuxが「/」を頂点としたツリー構造になっていることを理解し、 /etc・/home・/var・/usr・/tmpなど、主要ディレクトリの役割を説明できるようになることを目指します。

目次

Linuxのディレクトリは「/」から始まる

Linuxのディレクトリ構造を理解するうえで、最初に覚えておきたいのがルートディレクトリです。

Linuxでは、

/

が、すべてのディレクトリの出発点になります。

この「/」をルートディレクトリ(root directory)と呼びます。

ROOT /
/etc 設定
/home ユーザー
/var 可変データ
/usr プログラム等
/tmp 一時ファイル

つまりLinuxでは、すべてのファイルやディレクトリが「/」の下にぶら下がっていると考えることができます。

Windowsとの違いをイメージしよう

Windowsを使い慣れている場合は、Linuxの構造が少し分かりにくいかもしれません。

WINDOWS ドライブ単位
C:\

├─ Windows

├─ Users

└─ Program Files

D:\

└─ Data

VS
LINUX 「/」を頂点とした1つのツリー
/

├─ etc

├─ home

├─ var

├─ usr

└─ tmp

Linuxは「全部 / の下にある」と考える

最初は各ディレクトリをすべて暗記する必要はありません。 まずは「/が頂点」という全体像を理解しましょう。

Linuxの基本的なディレクトリ構造

一般的なLinuxでは、ルートディレクトリの下に次のようなディレクトリがあります。

/
├── bin
├── boot
├── dev
├── etc
├── home
├── root
├── run
├── tmp
├── usr
└── var
    └── log

この中でも、Linux初学者がまず覚えておきたいのは次のディレクトリです。

/etc 設定ファイル
/home 一般ユーザーのホーム
/var ログなど変化するデータ
/usr プログラム・共有データ
/tmp 一時ファイル
/root rootユーザーのホーム

/etc:システムやサービスの設定ファイル

/etcは、Linuxを扱ううえで非常によく見るディレクトリです。

ETC
CONFIGURATION

/etc

OSやサービスなどの設定ファイルが保存される場所です。

たとえば、次のようなファイルがあります。

/etc/hosts ホスト名とIPアドレスの対応など
/etc/passwd ユーザーアカウント情報
/etc/ssh/sshd_config SSHサーバーの設定

サーバーの設定変更やトラブルシューティングでは、/etc配下を確認する場面が非常に多いです。

ls /etc

/home:一般ユーザーのホームディレクトリ

/homeには、一般ユーザーごとのホームディレクトリが配置されます。

/home
/home/taro taro
/home/hanako hanako
/home/user user

たとえば「taro」というユーザーであれば、通常は、

/home/taro

がホームディレクトリになります。

ユーザーが作成したファイルや個人設定などは、このホームディレクトリ内に保存されることが多くあります。

/root:rootユーザー専用のホームディレクトリ

ここは初学者が混乱しやすいポイントです。

Linuxには、

/ ルートディレクトリ ファイルシステムの頂点
/root rootユーザーのホーム 管理者用ホームディレクトリ

というまったく別のものがあります。

BEGINNER POINT 「/」と「/root」は別物

/ はLinux全体の頂点です。/rootはrootユーザー用のホームディレクトリです。

/var:ログなど「変化するデータ」

/varの「var」は、variable(変化する)に由来します。

その名前のとおり、運用中にサイズや内容が変化していくデータが配置されます。

VAR /var
/var/log ログ
/var/cache キャッシュ
/var/lib サービス等の状態データ

特に重要なのが、

/var/log

です。

システムやサービスのログが保存されるため、Linuxサーバーで障害が発生したときに確認する代表的な場所です。

/usr:プログラムや共有データ

/usrには、ユーザーが利用するコマンドやライブラリ、共有データなどが配置されます。

/usr/bin 多くの一般的なコマンド
/usr/lib ライブラリなど
/usr/share 共有データなど
/usrは「ユーザーの個人ファイル置き場」ではない

名前からユーザー用ディレクトリのように見えますが、個人ファイルは通常/home配下に保存します。

/tmp:一時ファイルを保存する場所

/tmpは、temporary(一時的)の名前のとおり、一時ファイルを保存するためのディレクトリです。

TMP
TEMPORARY

/tmp

アプリケーションなどが一時的に使用するファイルが配置されます。

長期間保存する重要なファイルを置く場所ではありません。環境によっては再起動や一定期間経過後などに削除される場合があります。

/bin:基本的なコマンド

/binは、基本的なコマンドに関連するディレクトリです。

たとえば、

ls cp mv rm

など、これまで学習してきた基本コマンドが関係します。

現在のLinuxでは構造が少し異なる場合もある

現在の多くのLinuxディストリビューションでは、/binが/usr/binへのシンボリックリンクになっている場合があります。 初級では「基本コマンドに関係する場所」と理解しておけば十分です。

/boot・/devも知っておこう

/boot 起動に必要なファイル

Linuxカーネルなど、システム起動に関係するファイルが配置されます。

/dev デバイスファイル

ディスクや端末など、デバイスを表現する特殊なファイルが存在します。

初級段階では細かい内容を暗記する必要はありません。まずは「Linuxではデバイスもファイルとして扱われる」という特徴を知っておきましょう。

主要ディレクトリを整理しよう

ディレクトリ 主な役割
/ ファイルシステム全体の頂点
/etc 設定ファイル
/home 一般ユーザーのホーム
/root rootユーザーのホーム
/var ログなど変化するデータ
/usr コマンド・ライブラリ・共有データなど
/tmp 一時ファイル
/boot システム起動関連
/dev デバイスファイル

ここで実際に確認してみよう:Linux Directory Explorer

主要ディレクトリの役割を、実際に選択しながら確認してみましょう。

下のディレクトリをクリックすると、「何が保存されるのか」「実務でどんなときに見るのか」が表示されます。

INTERACTIVE LAB

Linux Directory Explorer

FILESYSTEM
ROOT DIRECTORY

/

Linuxファイルシステムの頂点

Linuxのすべてのファイルとディレクトリは、この「/」を起点として配置されます。

実務でのポイント

Linux全体のディレクトリ構造を理解するときの出発点です。

ここで実際に試してみよう:ディレクトリを移動する

これまで学習したpwdlscdを使って、Linuxのディレクトリ構造を探索してみましょう。

INTERACTIVE TERMINAL Directory Practice
user@linux
Linux directory practice
pwd / ls / cd を使ってディレクトリを探索してみましょう。
user@linux:~$
LEARNING POINT まずpwdで現在地を確認してみましょう

ディレクトリ構造を理解すると、cdやfindなどのコマンドも使いやすくなります。

実務ではディレクトリ構造をどう使う?

Linuxのディレクトリ構造は、単なる暗記知識ではありません。

障害対応やサーバー設定では、「何を調べたいか」から確認するディレクトリを推測します。

TROUBLE 01 サービスの設定を確認したい
/etc
TROUBLE 02 エラーのログを確認したい
/var/log
TROUBLE 03 ユーザーのファイルを確認したい
/home
「全部覚える」より「役割から場所を予測する」

Linuxを扱っているうちに自然と場所は覚えていきます。 初級では、/etc・/home・/var・/usr・/tmpの役割を優先して理解しましょう。

同じファイルでも「誰でも操作できる」とは限らない

ここまでで、Linuxではファイルがどのように配置されているのかが分かりました。

しかし、Linuxサーバーではすべてのユーザーが、すべてのファイルを自由に変更できるわけではありません。

たとえば、重要な設定ファイルを一般ユーザーが自由に書き換えられてしまうと、サーバーの設定を壊してしまう可能性があります。

FILE /etc/example.conf
PERMISSION -rw-r--r--

そこでLinuxでは、ファイルやディレクトリに「誰が・何をできるのか」という権限を設定できます。

これがパーミッションです。

次の記事では、このパーミッションの読み方と、chmodコマンドによる権限変更を学習します。

確認問題:Linuxのディレクトリ構造を理解できたか確認しよう

QUESTION 01

Linuxでシステムやサービスの設定ファイルが配置される代表的なディレクトリはどれですか?

正解:B. /etc

/etcには、OSや各種サービスの設定ファイルが配置されます。

QUESTION 02

Linuxサーバーでログを確認したい場合、最初に確認する代表的な場所はどれですか?

正解:C. /var/log

/varには変化するデータが配置され、/var/logはシステムやサービスのログを保存する代表的な場所です。

QUESTION 03

「/」と「/root」の説明として正しいものはどれですか?

正解:A

「/」はLinuxファイルシステム全体の頂点です。一方、/rootは管理者であるrootユーザーのホームディレクトリです。

YOUR SCORE 0 / 3

3問に挑戦してみましょう。

まとめ

01

Linuxでは「/」がファイルシステム全体の頂点になる

02

/etcには設定ファイルが配置される

03

/homeには一般ユーザーのホームディレクトリが配置される

04

/varにはログなど内容が変化するデータが配置される

05

すべてを暗記するのではなく、「何を調べたいか」からディレクトリを考えることが重要

NEXT LESSON

次は「Linuxのパーミッションとchmodの基本」を学びましょう

Linuxのファイルやディレクトリがどこに配置されるのかを理解できたら、 次は「そのファイルを誰が操作できるのか」を学習します。

次の記事では、 rwxの意味や rwxr-xr-xの読み方、chmodコマンドによる権限変更を初心者向けに解説します。

Linuxのパーミッションとchmodの基本
LINUX BEGINNER

Linux初級講座の一覧へ戻る

学習順を確認したい場合は、Linux初級講座の一覧ページへ戻れます。

← Linux初級講座へ戻る
目次