アットウィキロゴ

ファイルシステム概要

ファイルシステム

この章ではFHS(FileHierarchyStandard)に基づいて、Linuxのファイルシステム階層を説明する。

FHSはLinuxにおけるファイルやディレクトリに関する標準を定めた仕様であり、各ディストリビューションはこれに従って、ファイル、ディレクトリの階層化を行っている。


ファイルの種別

ファイルは他のホストと共有可能かあるいは不可能か、編集可能か不可能かで4つに大別することができる。

例えば/homeは他ノードと共有可能であるが、/etcは他ノードとの共有はできない。

一方、/binや/libにあるファイルは読み出しが主で、書き換えられるような正確のものではない。頻繁に書き換えられるようなファイルのためには/varが用意されている。


ルート(/)ファイルシステム

システムの起動に必要なファイルや、システムが異常をきたした場合に、それを修復するための各種ツールやユーティリティを含む。

ルートファイルシステムに、新しいサブディレクトリを作成することは薦められない。

ルートファイルシステムにはシステム固有の設定等が格納されているため、他システムと共有することはできない。


ルートファイルシステム配下のディレクトリ


/bin


shやmountなどシステムや一般ユーザに不可欠なコマンドが置かれる。/binは他のファイルシステムがマウントされていないときでも使用できなければならない。

/binの下にはディレクトリを作ってはならない。


/boot

システムの起動に必要な設定ファイルが置かれる。LILOやGRUBで参照されるファイルはこのディレクトリに格納されている。

カーネルイメージは、/ もしくは/bootに格納する必要がある


/dev

デバイスファイルを格納するためのディレクトリ


/etc

システムの各種設定ファイルを格納するためのディレクトリ。/etcには実行ファイルを置いてはならない。

/home


ユーザのホームディレクトを管理するための領域(


/lib

システムの起動や/sbin、/bin以下にあるプログラムの実行に必要なライブラリを保管する領域。カーネルがモジュールを利用する場合、/lib/modulesの下でそれを管理する。


/media

CD-ROM等の外部メディアのマウント場所として利用される。以前は/mntが利用されることが一般的であった。たとえばCD-ROMをマウントすると、/media/cdromに、USBメモリの場合は/media/flashがマウント先となる。

/mnt

CD-ROMやフロッピーディスクといった一時的に使用される必要がある領域のマウント先として利用される。

/opt

アプリケーション・パッケージの実行ファイルを保管するための領域で、/opt以下にはパッケージ名もしくはそのパッケージの供給元の名前がついたサブディレクトリが置かれる。例えばインテル社が販売しているCコンパイラのインストール先は/opt/intel/iccというディレクトリとなる。

各アプリケーションの設定ファイルは/etc/opt以下に保管する。


/root

システム管理者用アカウント(root)のログイン領域として使用される。

/sbin

システム管理者が利用する各種ツール、ユーティリティ類は/sbin、/usr/sbin、/usr/local/sbinに置かれる。その中でも/sbinはシステムの起動・修復に使われるコマンドを格納するためのもので、これに属さないものは通常/usr/sbinに置かれる。


/sbinや/usr/sbinはOSが用意するツール類を格納するためのもので、管理者がこの領域にプログラムをインストールすべきではない(管理者が追加する管理ツール類は、/usr/local/sbinを利用する)。


/tmp

/tmpはアプリケーションなどで使う一時ファイルを置くために用意された領域である。そのため、この領域に長期間必要とするファイルを置くべきではない。この領域にあるファイルはシステムの起動時に削除される。


/usrファイルシステム

/usrファイルシステムはシステムの起動には直接関係しないファイルが格納される。このファイルシステムは、読み込みのみ(READ-ONLY)であり、FHSに準拠した他のシステムとの共有が可能である。

/usrファイルシステムには以下のディレクトリ(もしくはそのシンボリックリンク)が必要となる。


/usr/bin  

ユーザが使用するコマンド群を格納する領域


/usr/include

インクルードファイル(C言語におけるヘッダファイル)を格納する領域


/usr/lib

/usr/binや/usr/sbinに格納された各種コマンドで使用するライブラリを格納する領域


/usr/local

システム管理者がインストールしたアプリケーションなどノード毎に異なる設定を格納する領域(通常OSをインストールした直後では、ディレクトリのみ用意されている)


/usr/sbin

システムの起動・修復には直接関係しない管理用コマンドを格納する領域。


/usr/share

アーキテクチャに依存しないファイルを格納するディレクトリ。OSが提供するコマンドのマニュアル(man)はここに置かれる。


/varファイルシステム

/varにはメールやプリンタのスプール領域や、syslogをはじめとする各種ログファイルのような可変的なファイルが置かれます。


/var/acct

pacct等のアカウンティング(課金)に関するログが格納される。


/var/cache

動的に生成されたフォントやWebといったアプリケーション関連のキャッシュ情報が格納される。


/var/crash

システム障害時に吐き出されるクラッシュダンプを格納するための領域


/var/lib

/var/lock

アプリケーション等で使用するロックファイルを格納する領域。ロックファイルは通常HDBUUCPロックファイル形式が使用される。


/var/log

syslog(/var/log/messages)やwtmp(ログイン/アウトの記録)等、システム関連のログファイルを格納する領域。


/var/opt

/optにインストールされたパッケージが利用する静的ファイルを格納する領域。このディレクトリ配下には、/optにインストールされたパッケージと同じ名前のサブディレクトリが作られる。


/var/run

プロセスIDを記録したファイル(PIDファイル)等、システムが起動した後の状態を保存しているファイルが格納される。


/var/spool

アプリケーションのスプールデータを格納する領域。ここに格納されるスプールデータとしては、プリンタ(lpd)や配信前のメール(mqueue)といったものがある。


/var/tmp

システムの起動時に作られる一時的なファイルやディレクトリを格納するための領域

/var/yp

NIS(NetworkInformationSystem:旧YP)の情報が格納される領域。


その他情報


FHSの情報ソース

FHSの原文は以下のURLから入手できる。平成18年6月時点ではFHS2.3が最新版となっている。


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

タグ:

+ タグ編集
  • タグ:
最終更新:2006年09月18日 20:57
ツールボックス

下から選んでください:

新しいページを作成する
ヘルプ / FAQ もご覧ください。