ページコンテンツ
FHS(Filesystem Hierarchy Standard)とは
Linuxのディレクトリ構成は、FHS(Filesystem Hierarchy Standard)として標準化されています。
ルートファイルシステムは、Linuxディレクト階層の中で最上位に位置します。ルートファイルに含まなければならないディレクトは下記となります。
- /bin
- /sbin
- /etc
- /dev
- /lib
FHS(Filesystem Hierarchy Standard)のディレクトリ構成
/bin
システム管理で必要なコマンドが配置されており、一般ユーザの利用も可能です。 下記コマンドが規定されています。
- cat ファイルの内容を表示
- chgrp ファイルやグループの所属するグループを変更
- chmod アクセス権限を変更
- chown ファイル、ディレクトリの所有者を変更
- cp ファイルやディレクトリをコピー
- date システム時間を参照
- dd
- df ディスクの利用状況の確認
- dmesg
- echo シェルスクリプトで変数を利用
- hostname ホスト名の表示、変更
- kill プロセスを終了
- ln シンボリックリンクを張る
- login ログイン
- ls ファイル一覧を表示する
- mkdir ディレクトリ作成
- more ファイル内容を画面単位で表示
- mount ファイルシステムを利用できるようにする(ファイルシステムのマウント)
- mv ファイル、ディレクトリの移動、ファイル名変更
- ps プロセス監視
- pwd 現在の作業ディレクトリを調べる
- rm ファイル、ディレクトリを削除
- rmdir 空のディレクトリを削除
- sed
- sh
- su ログインユーザでroot権限を実装
- sync
- umount ファイルシステムをアンマウント
- uname
/sbin
システム管理で必要なコマンドが配置されます。ここに配置されるコマンドは、rootユーザのみが実行可能です。
- shutdown システムを停止
- fdisk
- fsck
- getty
- halt
- ifconfig
- init
- mkfs
- mkswap
- reboot システムを再起動
- route
/etc
システム、アプリケーションの設定情報、スクリプトファイルが配置されます。
/dev
ハードディスク、CD-ROMなどのデバイスファイルが配置されます。デバイス毎にデバイスファイルが必要となります。
/lib
共有ライブラリやカーネルモジュールが配置されています。/bin、/sbinに格納されているコマンドが必要とするライブラリが配置されています。
/mnt
マウントポイントが配置されます。
/opt
パッケージ管理の仕組みを利用したプログラムがインストールされています。
/proc
カーネル内部の情報にアクセスための仮想的なファイルシステムです。このディレクトリのファイルは、実際には存在しません。
/root
rootユーザのホームディレクトリとなります。/homeファイルシステムがマウントできなくなっても、システムメンテナンスができるように、/homeとは別になっています。
/root
rootユーザのホームディレクトリとなります。/homeファイルシステムがマウントできなくなっても、システムメンテナンスができるように、/homeとは別になっています。
/boot
起動に必要な設定やカーネルイメージが配置されています。起動時にBIOS制御の影響を受けないようにするために、ルートファイルシステムとは別に、ディスクの先頭付近に配置することもあります。
/home
ユーザごとのホームディレクトリが配置されます。独立したファイルシステムにすることで、クォータを設定したり、保守性の向上を図ることができます。
/tmp
一時ファイルが配置され、全てのユーザが読み書き可能です。
/var
頻繁に書き換えられるファイルが格納されます。一般的に多めの容量を確保しておきます。
例)
- ログファイル
- メール、プリンターのスプール
varディレクトリの配下は更に細分化されます。
/var/cahe
manコマンドで表示すための整形データ、一時的なキャッシュファイルを配置
/var/loc
アプリケーショーンが排他制御に使うためのロックファイルを配置
/var/log
ログファイルを出力。
例)
- システムログファイル messages
- メールシステムログファイル mailog
/var/run
システムの状態を表すファイルを配置
例)
- PIDが格納されたファイル
/var/spool
処理を待つバッファであるスプールを配置
例)
- 送信待ちのメール(/var/spool/mqueue)
- 印刷待ちのデータ(/var/spool/lpd)
/usr
コマンドやユーティリティを配置 します。
usrディレクトリの配下は更に細分化されます。
/usr/bin
ユーザが一般的に使うコマンドが配置されます。緊急時のシステム保守で必要でないコマンドが該当します。
/usr/sbin
システム管理コマンドが配置されます。緊急時のシステム保守で必要なコマンドが該当します。
/usr/lib
プログラムに必要な共有ライブラリを配置 します。
/usr/local
ローカルシステムで必要とさえれるコマンド、ライブラリ、ドキュメントを配置します。独自に作成されたローカルコマンドが該当します。更に、bin,sbin,libに細分化さえれています。
「 /usr/local /sbin」には、システム管理者のコマンドが格納されます。
システムアーキテクチャに依存しないファイルを配置します。
/usr/src
Linuxカーネルソースなどのソードコードを配置します。
関連記事
最近の記事
- CentOS7 最小構成でインストール後のネットワーク設定ページコンテンツ 概要 CentOS7では、最小構成でインストールした直後はネットワークが接続されません。GU… 続きを読む »
- CenteOS7にYumを利用してGitサーバをインストールページコンテンツ 概要 勉強がてらにコーディングしたソースが多くなってきたので、Gitでのソース管理(構成管理… 続きを読む »
- yum update後 systemctl restart nginx.serviceにて「Can’t open PID file /var/run/nginx.pid (yet?) after start: Too many levels of symbolic links」エラー発生ページコンテンツ エラー内容 yum update後 systemctl restart nginx.serv… 続きを読む »
- CentOS7 Cronが使えないページコンテンツ CentOS7への切り替え CentOS6のサポート期限が切れるので、CentOS7への切り… 続きを読む »
- CenOS7、Java11(OpenJDK11) 、Tomcat9 インストールページコンテンツ 概要 CenOS7に、Java11(OpenJDK11) 、Tomcat9 をインストールす… 続きを読む »