- / # ルートディレクトリ
- /vmlinuz # /bootに置かれているLinuxカーネルにシンボリックリンクが貼られている
- /bin/ # バイナリ形式の実行ファイル置き場
- /boot/ # Linuxカーネルやブート処理に必要なファイル置き場
- /dev/ # デバイスファイル置き場
- /tty* # 制御端末に対応している.”tty”は”Teletype”が由来
- /null # nullデバイス.出力の破棄先に使う
- /zero # zeroデバイス.Nullが延々返ってくる
- /etc/ # 設定ファイル置き場
- /hosts # ホストとIPの対応付けを行う
- /hosts.allow # 接続を許可するホスト一覧
- /hosts.deny # 接続を拒否するホスト一覧
- /passwd # ユーザの名前やホームディレクトリ一覧
- /resolv.conf # 名前解決のためのDNSサーバ一覧
- /shadow # ユーザのパスワード(暗号化されている)
- /rc.local Linuxの起動時に実行されるシェルスクリプト
- /rc?.d/ # 起動用ファイルが置かれるディレクトリ(各ランレベルごとに番号が振られている)
- /home/ # ユーザのホームディレクトリ置き場
- /lib/ # 共有ライブラリ置き場
- /lost+found/ # システム障害時の不明ファイル避難先
- /proc/ # プロセスファイスシステム(procfs)置き場.CPUやメモリの情報などが含まれている.
- /cpuinfo # CPU情報
- /meminfo # メモリ情報
- /loadavg # ロードアベレージ(uptimeやtopに表示される)
- /root/ # スーパーユーザのホームディレクトリ
- /sbin/ # システム管理者が使用する実行ファイル置き場
- /tmp/ # 一時ファイル置き場.リブートすると消える
- /usr/ # 複数マシンで共有可能なファイル置き場
- /src/ # システムコマンドのソースコード
- /include/ # システムのヘッダファイル
- /share/ # 複数マシンで共有可能なファイル(特にドキュメント系)
- /man/ # manページ
- /man*/ セクションごとにディレクトリが分かれている
- /man/ # manページ
- /info/ # infoファイル
- /local/ # システムの管理者が管理するファイル
- /var/ # 頻繁に書き換えられるファイル置き場
- /log/ # ログファイル
- /spool/ # 一時的に保存するファイル
- /tmp/ # /tmpと似ているが,リブートしても消えない
- /run/ # 起動中のプロセスのPIDが保存される.Ubuntu12.04ではルートディレクトリの/runにシンボリックリンクが貼られている
環境
なるべく一般的なLinuxの情報を参考にしつつ,手元のUbuntu12.04と照らし合わせながら作成している.環境によっては違う部分があると思うので注意.
参考
- Windowsユーザーに教えるLinuxの常識(2):各ディレクトリの役割を知ろう(ルートディレクトリ編) (1/2) - @IT
「Linuxの教科書 改訂版 (マイコミムック) (MYCOMムック)」では,ルートディレクトリ構成および中身のファイルに至るまで,基礎の部分について網羅的に書かれている.また,/etcと/varの概要をRed Had系とDebian系でそれぞれリストアップしている.
「ふつうのLinuxプログラミング Linuxの仕組みから学べるgccプログラミングの王道」では,ルートディレクトリの基本的な構造とその役割について書かれている.特に/usrと/varを使い分ける基準が解説されている点は参考になった.
「プロのための Linuxシステム・10年効く技術 (Software Design plus) 」では,/dev/nullおよび/dev/zeroの使い方について参考にした.他にもプロセスまわりやメモリ管理について詳細に書かれている.