mutao.net

いわゆる雑記。

FHS

FHS

LinuxにおけるファイルシステムのレイアウトはFHS(Filesystem Hierarchy Standard)で標準化されている。

主要ディストリビューションではFHSをサポートしている。

ルートファイルシステムに含まれなければならないディレクト

  • /bin
  • /sbin
  • /etc
  • /dev
  • /lib

/bin

基本的なコマンドを格納。一般ユーザでも実行可能。

cat chown cp などなど

/sbin

システム管理に必要なコマンドを格納。rootユーザのみが実行可能。

Shutdown fdisk fsck などなど

/etc

システムやアプリケーションの設定ファイルやスクリプトファイルを格納。

/dev

HDDやDVD-ROM等のデバイスファイルを格納。

/lib

共有ライブラリやカーネルモジュールを格納

/binや/sbinに必要なライブラリはここにある。

/media

DVD-ROM等のリムーバブルメディアのマウントポイントを配置

/mnt

一時的にマウントするファイルシステムのマウントポイントを配置

/opt

パッケージ管理の仕組みでプログラムがインストールされるディレクトリ。

パッケージが追加されていくことになるのでパーティションを分けた方が良い

/proc

カーネル内部の情報にアクセスするための仮想的なファイルシステム

実際にはディスクに存在しない。

root

rootユーザのディレクトリ。/home ファイルシステムがマウントできなくなった場合などでもメンテナンスができるよう、/homeとは別になる

/boot

起動に必要な設定やカーネルイメージが配置される。

起動時にBIOSの制限を受けないために、ルートファイルシステムとは別にディスク先頭に配置されることがある。

/home

ユーザごとのホームディレクトリを格納。

ユーザが増える場合を考慮して別のパーティションにした方が良い。

/tmp

一時ファイルが格納される。全てのユーザが書き込みと読み込みを行える。

/var

ログファイルなど頻繁に書き込みが発生するファイルが配置される。

パーティションは分けた方がいい。

/usr

コマンドやユーティリティが格納される。

  • /usr/bin

一般ユーザが使用するコマンドを配置。

  • /usr/sbin

rootユーザが使用するコマンドを配置。

緊急メンテナンス等に必須ではないコマンドが配置される。

  • /usr/lib

プログラムの実行に必要なライブラリが配置される。

  • /usr/local

ローカルシステムで必要とされるコマンドやライブラリ等を配置。

中にはbin sbin/lib などのディレクトリがある。

  • usr/share

システムアーキテクチャに依存してしないファイルを配置。

/usr/share/man には manコマンドで使用するマニュアルがある。

  • /usr/src

Linuxカーネルソース等のソースコードを配置。