Linuxのファイルシステムが格納されたディレクトリ階層のレイアウトはFHS(Filesystem Hierarchy Standard)によって定められています。現在の最新バージョンとなる3.0では、13個のディレクトリの他、オプションとして/rootと/homeも定められています。
中でも、/bin、/sbin、/etc、/dev、/libの5個はLinuxのディレクトリ階層で最上位に位置するルートファイルシステムに含まれなければならないと定められています。今回はFHSで定められているディレクトリの内容を紹介します。
□/bin
シングルユーザーモードで起動するコマンドが配置されます。すべてのユーザーが使用可能で、cat、ls、cpなどの基本的なコマンドが規定しています。
□/sbin
ルートユーザーのみが使用可能なシステム管理系のコマンドが配置されます。shutdown、fdisk、ifconfigなどを規定しています。
□/etc
システム管理用の設定ファイルが配置されます。
□/dev
デバイスファイルが配置されます。ハードディスクやDVD-ROMなどを利用するにはデバイスに応じたデバイスファイルが必要です。
□/lib
/binや/sbinに配置されているコマンドが必要としている共有ライブラリが配置されます。
□/media
CD-ROMやDVD-ROMなどのメディアのマウントポイントが配置されます。
□/mnt
一時的なファイルシステムのマウントポイントが配置されます。
□/opt
追加でインストールしたアプリケーションのパッケージが配置されます。ディストリビューションによっては配置されない場合もある。
□/proc
カーネルやプロセスの情報が仮想テキストファイルとして配置されます。
□/boot
システム起動に必要なブートローダー関連のファイルや、カーネルイメージが配置されます。
□/tmp
一時ファイルが配置されます。すべてのユーザーが利用できます。
□/var
頻繁に書き換えが行われるログ、スプール、メールなどのファイルが配置されます。/varディレクトリの配下は細分化されており、一時的なキャッシュファイルが配置される/var/cache、ログファイルが配置される/var/log、ユーザーのメールボックスが配置される/var/mailなどがあります。
□/usr
全ユーザーが利用するユーティリティやアプリケーションが配置されます。/usrディレクトリの配下は細分化されており、/binとは違ってシングルユーザーモードで必要としないコマンドが配置される/usr/binや/usr/sbin、/usr/binと/usr/sbinにあるコマンドが必要とする共有ライブラリが配置される/usr/lib、アーキテクチャに依存しない共有ファイルが配置される/usr/shareなどがあります。
□/root、/home
/homeはユーザーごとのホームディレクトリが配置されます。/rootはルートユーザー用のホームディレクトリで、/homeとは独立しています。これらはFHSにおいてオプションとして扱われています。