第 37章ファイルシステム

37.1. ディレクトリ階層と概要

Linux の標準化団体である LSB(Linux Standard Base)が推進するプロジェクトに FHS(Filesystem Hierarchy Standard)があります。FHS は、ディレクトリ構造やファイルの格納場所を定義することで、Linux および UNIX 間のディレクトリ構造の差異による不具合を解消し、互換性を保つために策定された標準規格です。FHS は文書として公開されており、現在では多くの Linux ディストリビューターが FHS に準拠すべく積極的な活動を行っています。ただし、ディストリビューション間の差異が少なくなってきたことは事実ですが、細かな違いも残っています。FHS に関する詳細なドキュメントは、下記の Webサイトを参照してください。

Filesystem Hierarchy Standard

http://www.pathname.com/fhs/

Turbolinux 11 Server の基本的なディレクトリ構造とその概要を以下に示します。

表 37-1. ディレクトリ構造と概要

/ディレクトリ階層の最上位に位置するルートディレクトリです。すべてのディレクトリやファイルはこの / ディレクトリから辿ることができます。
/binシステム管理者と一般ユーザーが使用する基本的なコマンドが置かれます。
/bootLinux カーネルやブートローダーの関連ファイルなどが置かれます。
/devデバイスファイルが置かれます。
/etcシステムの設定ファイルやシステム起動時に実行されるスクリプトなどが置かれます。/etc にはバイナリファイルは置かれません。/etc/X11 以下のディレクトリには、x.org の設定ファイルである xorg.conf ファイルなども置かれます。その他にも、/etc/init.d ディレクトリをはじめシステムに重要なファイルが数多く含まれます。
/home一般ユーザーのホームディレクトリが置かれます。
/lib共有ライブラリやカーネルモジュールが置かれます。モジュールは、/lib/modules 以下のディレクトリに置かれます。
/mntCD-ROM やフロッピーディスクなど一時的にマウントするデバイスのマウントポイント(/mnt/cdrom や /mnt/floppy)が置かれます。
/opt階層の深いディレクトリ構成を持つアプリケーションのインストール先ディレクトリとして使用されることがあります。
/proc/proc は特殊なディレクトリでカーネル内部の情報を参照できる特別な仮想ファイルシステムです。
/rootスーパーユーザー root のホームディレクトリです。
/sbinシステム管理者が使用するコマンドが置かれます。
/sysKernel 2.6 からの新しいドライバモデルの導入に伴い存在する仮想ファイルシステムです。デバイスドライバ、ドライバクラス、バスなどの情報を参照することができます。
/tmp一時的なファイルの格納場所として使用されるディレクトリです。特殊なディレクトリで誰もが書き込み可能です。
/usrユーザーが共有して使用するアプリケーションや共有ライブラリなどが置かれます。
/usr/bin、/usr/sbin/bin、/sbin と同じようにコマンドが置かれます。ここに置かれるコマンドは、基本的にすべてのユーザーが使用可能で、/bin、/sbin と比較するとシステム非標準なコマンドです。
/usr/includeC言語のプログラムをコンパイルするためのヘッダファイルが置かれます。
/usr/localローカルホスト用のアプリケーションなどをインストールするために使用されるディレクトリです。また、/usr/local ディレクトリ以下の構成は、/usr と似た階層になっています。
/usr/shareユーザーが共有して使用するファイルが置かれます。/usr/share/doc 以下のディレクトリにはパッケージに含まれていたマニュアルなどが置かれます。/usr/share/man ディレクトリには、man ページのオンラインマニュアルが置かれます。
/usr/srcシステムのソースファイルが置かれます。Linux カーネルのソースファイルは、/usr/src/linux に置かれます。
/usr/X11R6X Window System 関連のプログラムやライブラリなどが置かれます。
/varシステムのログが保存される /var/log ディレクトリやメールや印刷時のスプールファイルが保存される /var/spool ディレクトリなどが置かれます。