| 第1階層 | 第2階層 | 第3階層 | 第4階層 | 説明 |
| bin(コマンド系) | ||||
| boot(起動ファイル) | vmlinuz-カーネル名 | カーネル本体 | ||
| grub | grub.conf | ブートローダーの設定ファイル(CentOS6の場合) | ||
| grub2 | grub.cfg | ブートローダの設定ファイル(CentOS7の場合)。このファイルを直接編集は非推奨。設定を変更したい場合、/etc/default/grubを編集する | ||
| initramfs[xxxx].img | mini root用のファイルフォーマット。ルートディレクトリをcpioという形式でgzipでアーカイブ化してある。 | |||
| initrd[xxxx].img | initrd(多様なシステム構成に対応して、linuxが起動するための仕組み。カーネルに無いモジュールを読み込んだり)。 | |||
| dev(デバイスファイル) | ||||
| disk | by-uuid | この階層配下のファイルリンクをls -l等で見ることでディスクに紐づくUUIDを知ることができる | ||
| fd | ファイルディスクリプタ | |||
| 0 | 標準入力。/dev/pts/Xを指す | |||
| 1 | 標準出力。/dev/pts/Xを指す | |||
| 2 | 標準エラー出力。/dev/pts/Xを指す | |||
| hd | IDEのハードディスク | |||
| mapper | 論理ボリューム(LV)を表す。[ボリュームグループ名]-[論理ボリューム]という名前で、カーネルが管理する便宜上のデバイスをマッピング管理しているdm-Xへのリンクが貼られている。直接触ることはあまり無い | |||
| null | データを捨てるという意味 | |||
| pts | 端末にSSH接続してきたユーザとやり取りをするファイル。 /dev/pts/0や/dev/pts/1等は仮想ターミナルを表す。 コマンド結果のリダイレクト先を/dev/pts/0などに指定すると、その番号のターミナルでサーバにアクセスしているユーザに対し、結果を表示できる | |||
| random | 乱数生成機 | |||
| sd | SCSIまたはSATAのハードディスク | |||
| stdin | 標準入力。/proc/self/fd/0を指すシンボリックリンク(OS等いにより差し先は異なる。) | |||
| stdout | 標準出力。/proc/self/fd/1を指すシンボリックリンク(OS等いにより差し先は異なる。) | |||
| stderr | 標準エラー出力。/proc/self/fd/2を指すシンボリックリンク(OS等いにより差し先は異なる。) | |||
| zero | /dev/nullと似ているが、ddコマンドを使ってみると0x00埋めするという違いに気づける模様。 | |||
| etc(設定ファイル) | aliases | Sendmail用ファイル | ||
| anacrontab | クーロン(定期的にジョブを実行するもの)の設定。 ※crontabの場合システム停止時はジョブを実行しないが、 anacrontabは一定時間後にジョブ実行が可能 | |||
| at.allow | atコマンドを許可するユーザを記述する | |||
| at.deny | atコマンドを拒否するユーザを記述する | |||
| audit | auditd.conf | audit(コマンドログやファイル変更の記録)の設定ファイル。改ざん検知とかに使える。 | ||
| audit.rules | audit(コマンドログやファイル変更の記録)におけるログ出力方針等のルールを規定 | |||
| avahi | コンピュータのホスト名の自動解決等を提供する。Zeroconfの実現方式の一つで、DNSにもちょっと似ている。 | |||
| bashrc | bashシェルを起動した時に読み込まれる設定ファイル。あまり弄ることは無い気はする。 | |||
| cron.allow | cronを許可するユーザを記述する | |||
| cron.deny | cronを拒否するユーザを記述する | |||
| cron.d | 自動的に実行するジョブを格納。 他にもcronを実行するタイミングに合わせて、cron.daily,cron.hourly,cron.monthly,cron.weeklyなどがある。 | |||
| crontab | root権限でクーロン(定期的にジョブを実行するもの)実行するための設定。ユーザ権限で実行する場合は/var/spool/cron配下をcrontabコマンドで編集する | |||
| crypttab | システムの暗号化に関する設定 | |||
| default | 各種コマンドの設定値が置かれている | |||
| dhcpd.conf | DHCPサーバの設定ファイル | |||
| environment | システムの環境設定を記載するファイル | |||
| exports | NFSの設定 | |||
| filesystems | AIXにおける、システム起動時にマウントされるデバイスの設定 | |||
| firewalld | ファイアウォール設定。CENT OS7からiptablesからfirewalldに変更になった。 | |||
| fstab | BSDにおける、システム起動時にマウントされるデバイスの設定。mountコマンドが手動なのに対し、ここで設定すると自動でマウントできる。 | |||
| group | ユーザグループを管理:ユーザ名、グループ名 | |||
| gshadow | グループパスを管理:ユーザ名、パスワード | |||
| host.allow,host.deny | アクセス許可・拒否するクライアント設定 | |||
| host.conf,nsswitch.conf | 名前解決を決定するものにはhostsファイルと resolv.conf(DNSサーバ)があるが、 どちらの名前解決を優先して実施するかを決めるファイル。 | |||
| hostname | ホスト名を記載。CentOS7以降はnmcli generalで設定する。 | |||
| hosts | IPとホスト名の対応表 | |||
| httpd | conf | httpd.conf | Apache動作設定ファイル。 | |
| conf.d | ssl.conf | SSL設定ファイル | ||
| logs | access_log | Apacheのアクセスログ | ||
| logs | error_log | Apacheのエラーログ | ||
| idmapd.conf | NFSv4の設定ファイル。サーバとクライアントでドメイン名を合わせて設定しておく必要有 | |||
| init.d | /etc/rc.d/init.dへのシンボリックリンク | |||
| inittab | init(システム起動時)の際の動作の設定。CentOS7とかではsystemctl set-default ターゲット名等で編集 | |||
| inputrc | キーバインドの設定を変更する場合等に編集するファイル。入力補完などで便利。 | |||
| issue | ログイン完了前に表示するシステムバナー | |||
| kdump.conf | カーネルダンプの設定 | |||
| ld.so.conf | 共有ライブラリの検索パス設定。システム全体として/usr/lib/や/lib以外に共有ライブラリを置く場合に設定する。設定する時には、ldconfigコマンドを実行して、/etc/ld.so.cacheを生成し有効化する。個人ごとに設定する場合は、環境変数のLD_LIBRARY_PATHに登録することが多い(例えば、共有ライブラリとして上記場所以外に/usr/local/libを指定する等)。 | |||
| logrotate.d | サービスごとのログの保存期間を設定する | |||
| login.defs | shadowログインに関する設定を記載。パスワードポリシーを設定可能。既存のユーザには適用されないので、必要に応じてchageコマンド等も活用すること。 | |||
| logrotate.conf | ログをいつまで保存しておく等、ログのローテーションを決めるファイル。 logrotate.dフォルダ配下ではサービスごとのログのローテーションを定義するが、こちらは全サービス共通の設定ファイルという位置づけ。 | |||
| mke2fs.conf | mke2fsコマンドのパラメータ設定 | |||
| modprobe.conf | モジュールドライバを指定する。 | |||
| motd | ログイン完了後に表示するシステムバナー | |||
| mtab | マウント状態が書かれたファイル | |||
| my.cnf | MySQLの設定 | |||
| named.conf | DNS(マスター、ゾーンサーバの設定) | |||
| networks | ネットワーク名とアドレスの対応関係を記載 | |||
| ntp.conf | NTPの設定ファイル。どのNTPサーバを参照するかを記載する。 | |||
| pam.d | su | suを実行できるユーザを制限したりできる | ||
| system-auth | OS全体の認証(ssh,ログイン等)を設定する。色々なアプリのパスワードを統合するOS版シングルサインオンがイメージ近いかも。ちなみにデフォルトではshadowログインと同様で、パスワードポリシーを設定可能。 | |||
| password-auth | ミドルウェアの認証を設定する。 | |||
| passwd | ユーザ情報を管理。このファイルは直接書き換えてはいけない。書き換える場合はvipw等を使う。 | |||
| pki | tls | openssl.cnf | openssl(HTTPS)の設定ファイル | |
| postfix | main.cf,master.cf | Postfix設定ファイル | ||
| ppp | pppoe.conf | pppoeの設定ファイル | ||
| profile | ログインシェルの環境変数を記載するスクリプト | |||
| profile.d | xxxx.sh | アプリケーションごとの設定を記載。/etc/profileで呼び出すように設定されている。 | ||
| rc.d | init.d | サービス関連のスクリプトがあり、/etc/rc.d/サービス名 startのような形で起動できる。このファイルを直接編集することは推奨されない。chkconfigやinsservコマンドを使用しよう。 | ||
| rc3.d | このフォルダ内のファイルの番号からサービス起動順序が分かる | |||
| rc.local | linux起動時に自動起動するものを記述 | |||
| resolv.conf | DNSサーバの情報を記述 | |||
| rsyncd.conf | rsyncデーモンの動作を設定するファイル | |||
| samba | smb.conf | Sambaの設定ファイル | ||
| security | access.conf | pam認証によるsshのアクセス制限の設定ファイル | ||
| limits.conf | PAM認証の設定ファイルでユーザやグループごとに適用するリソース制限を記述 | |||
| opasswd | 過去に使用したパスワードが保存されているファイル | |||
| selinux | config | SElinuxの設定ファイル | ||
| targeted | contents¥files | SElinuxのファイルアクセス権と言える、SElinuxコンテキストのポリシーを決めているファイル | ||
| sevices | サービス名と対応するポート番号の設定 | |||
| shadow | ユーザパスを管理:ユーザ名、パスワード | |||
| shells | 実行可能なシェルを設定 | |||
| skel | ユーザ追加時のユーザディレクトリの雛形を担う | |||
| smartd.conf | smartd(HDDの自己診断機能)の設定ファイル | |||
| squid | squid.conf | プロキシの設定ファイル | ||
| ssh | sshd_config | sshの設定ファイル(サーバ側[sshを受け取る])。sshの認証キーはssh-keygenコマンドで生成できる。 | ||
| ssh_config | sshの設定ファイル(クライアント側[sshを送る]) | |||
| ssl | ||||
| sudoers | sudoの実行可能ユーザ等の設定。編集する際にはvisudoコマンドを利用する。尚、このファイルを直接編集する時(非推奨)はうっかりroot権限で入れなくならないようにroot権限のパスワードを控えておくと良い。 | |||
| sysconfig | システムの構成を制御するようなファイルが置かれている。 CentOS7からはここにあるファイルを直接変更するのでなくnmcli等を使うようになった。 | |||
| network | ホスト名とかゲートウェイ情報 | |||
| network-scripts | ifcfg-eth0 | ネットワークインタフェースの設定 | ||
| ifcfg-lo | ローカルインタフェースの設定 | |||
| route-eth0 | スタティックルートの設定 | |||
| ifcfg-bondX | bondingドライバを使って複数NIC(eth0,eth1等)を束ねる時の設定 | |||
| ifcfg-brX | bridgeの設定 | |||
| iptables | ファイアウォールの設定。このファイルに書き込むことで再起動後もiptableの設定は残ったままとなる。尚、このファイル自体を直接書き換えることは少なく、通常は/etc/init.d/iptables saveコマンドを実行する。 | |||
| selinux | SELINUXの設定 | |||
| sysstat | リソース状態の保存期間を設定する | |||
| syslog.conf,rsyslog.conf | ログ設定ファイル | |||
| sysctl.conf | Linuxカーネルパラメータの設定ファイル | |||
| systemd | system | xxxx.service | サービスとして動作させるUnitの定義ファイル。 以下の準に優先される。 1./etc/systemd/system 2./run/systemd/system 3./lib/systemd/system 4./usr/lib/systemd/system | |
| system-generators | システム環境に応じて、動的にUnitファイルを生成するgenerator群 | |||
| tmpfiles.d | 一時ファイルの生成・削除等に関する設定ファイル。/usr/lib/tmpfiles.dよりも優先される。 | |||
| udev | rules.d | このフォルダ配下にある設定ファイルに従って、デバイスファイルを作成する。例えばネットワークインタフェース名を変えるようなことも出来る。無い場合は/usr/lib/udev/rules.dのデフォルトルール付でデバイスファイルが生成される。 | ||
| vsftpd | vsftpd.conf | vsftpdの設定ファイル | ||
| xinetd.conf | telnetやssh等複数サービスの設定を行うファイル | |||
| xinetd.d | telnet | telnetの設定ファイル | ||
| yum | pluginconf.d | redhat系の場合、ここにサブスクリプション用のリポジトリ設定ファイルがある | ||
| yum.conf | yumの構成設定ファイル。yumの際のプロキシ設定もここで行う。 | |||
| yum.repos.d | xxxxx.repo | yum installする時等に使用するリポジトリ | ||
| ゾーンファイル | dnsの正引き逆引きの設定ファイル | |||
| エイリアスファイル | ||||
| home(ホームディレクトリ) | .bash_history | historyコマンド実行時に参照されるコマンド履歴 | ||
| .bash_login | .bash_profileが無い時に読み込まれる | |||
| .bash_profile | ログインした時に読み込まれるbashの環境設定。exportして環境変数を決めるのに使う。 | |||
| .bash_rc | bash起動ごとに読み込まれるbashの環境設定。 | |||
| .profile | .bash_loginが無い時に読み込まれる | |||
| .ssh | authorized_keys | SSHで公開鍵認証をする際には個人ユーザの公開鍵をここに記載する | ||
| config | ssh接続の際のポート指定や鍵名指定がデフォルトでない場合に役立つ。 | |||
| lib(共有ライブラリ) | ||||
| modprobe.d | modprobeコマンドの設定ファイル | |||
| modules | /boot/vmlinuz*に対応するカーネルモジュール | |||
| カーネルバージョン | modules.dep | モジュールの依存関係のリスト。modprobeコマンドが依存関係を調べるのに使用される | ||
| systemd | system | サービスとして動作させるUnitの定義ファイル。 以下の準に優先される。 1./etc/systemd/system 2./run/systemd/system 3./lib/systemd/system 4./usr/lib/systemd/system | ||
| lost+found(壊れてしまったファイル) | ||||
| media(外部メディア) | ||||
| mnt(マウント) | ||||
| net | ||||
| opt(追加アプリ) | ||||
| proc(プロセス情報) | プロセス等の情報をファイルとして仮想的に扱うためのディレクトリ | |||
| 数字(プロセスID) | プロセスIDに紐づく固有の情報 | |||
| fd | プロセスのファイルディスクリプタの向き先 | |||
| status | プロセスの状態 | |||
| bus | pci | devices | PCIデバイスの情報が載っている。通常はlspciコマンドなどで確認する。 | |
| cgroups | システムリソース(CPUやメモリ等)の割当、優先度の変更等を行う | |||
| cpuinfo | マシンのプロセッサ情報 | |||
| filesystems | マウントする時のファイルシステムのリスト | |||
| pid | http://ja.wikipedia.org/wiki/Procfsを参照のこと。 | |||
| meminfo | メモリ使用状況を見れる。freeコマンドでも確認可。 | |||
| modules | linuxカーネルのモジュール情報 | |||
| mounts | カーネルが出力するマウント状態 | |||
| mdstat | RAID状態を見れる。mdadmコマンドでも確認可。 | |||
| net | ネットワーク関連の情報が入っている | |||
| partitions | partition情報 | |||
| sys | カーネル・パラメータを収容するディレクトリ。/sbin/sysctl -aで閲覧可能。 | |||
| swaps | 有効になっているスワップを見れる。freeコマンドでも確認可。 | |||
| version | カーネルのバージョン情報 | |||
| root(rootのホームディレクトリ) | ||||
| run | 実行時の変数等を格納する場所 | |||
| systemd | system | サービスとして動作させるUnitの定義ファイル。 以下の準に優先される。 1./etc/systemd/system 2./run/systemd/system 3./lib/systemd/system 4./usr/lib/systemd/system | ||
| sbin(システム管理コマンド等) | ||||
| init | SysVinitの本体。/etc/inittabの設定内容に従って、サービス起動処理を行う。 | |||
| nologin | サーバデーモン等ログインできて欲しくないユーザに指定させるシェル | |||
| srv | FTP,wwwで利用するユーザ用スペース | |||
| sys(仮想ファイルシステム:sysfs) | /procと似た情報が入る。主にハードウェアデバイス情報等 | |||
| block | カーネルが認識するブロックデバイス | |||
| sda | queue/scheduler | ディスクIOのスケジューラ。IOのチューニング等で設定する。参考:http://tfcenturion.hatenablog.com/entry/2015/11/07/091307 | ||
| class | net | 仮想/論理/物理のデバイス情報が分かる | ||
| デバイス名/address | MACアドレス | |||
| tmp(一時ファイル) | ||||
| usr(プログラム類) | libexec | postfix | master | postfixの中心プログラム |
| bin | OS標準等の一般的なコマンド類置き場 | |||
| smbpasswd | Sambaユーザ作成実行ファイル | |||
| sbin(システム管理コマンド等) | デーモン類等 | 各種サービスの本体 | ||
| include | プログラムのヘッダファイル等 | |||
| lib | ライブラリファイル | |||
| modules | カーネル・バージョン | カーネルが起動時に読み込むモジュール | ||
| systemd | system | システムデフォルトのサービスとして動作させるUnitの定義ファイル。 以下の準に優先される。 1./etc/systemd/system 2./run/systemd/system 3./lib/systemd/system 4./usr/lib/systemd/system。ユーザ定義で追加・修正等の変更を施す場合は、ここのファイルを/etc/systemd/systemにコピーしてから変更する。 | ||
| systemd | systemdの本体 | |||
| tmpfiles.d | tmpファイルのデフォルト設定。ユーザ定義で追加・修正を施す場合は、/etc/tmpfiles.d配下にconfファイルを作成し、編集する。 | |||
| udev | rules.d | 動的にデバイスファイルを扱うためのルールファイル。 | ||
| libexec | コマンドから内部的に呼ばれる補助コマンドの置き場 | |||
| local(ローカルで必要なコマンド、ライブラリ等) | bin | OS標準外の実行ファイル置き場。/usr/binが正式版の位置づけなら、こちらは評価版の位置づけ。 | ||
| lib | ||||
| share | ドキュメントファイル等 | |||
| src | ソースコード置き場 | |||
| kernels | カーネルのソースコード | |||
| var(変化するデータ類) | www | html | html保存先 | |
| cache | 一時的な記憶場所。 | |||
| yum | yumがリポジトリからダウンロードしたデータを配置する | |||
| crash | システムクラッシュ時のdumpデータ | |||
| named | ゾーンデータベースファイル | |||
| lib | アプリケーションやシステムが持つデータ類 | |||
| dhcpd | dhcpd.leases | DHCPサーバが貸出を行ったIPアドレス等の情報を記録したログ | ||
| rpm | rpm関連のデータを格納するデータベース | |||
| local | /usr/local用のログ保存場所 | |||
| lock | ファイルの読み書きのロックファイル | |||
| log | ログファイル系 | |||
| opt | /optの動的ファイル置き場 | |||
| run | 特定プロセスのプロセス番号を含んだファイル。プロセスにシグナルを送る際に、psコマンドでプロセス番号を調べずに済む | |||
| utmp | ログインしているユーザ情報を記載しており、wやwhoコマンド実行時の参照先 | |||
| spool | cron | user名 | ユーザ権限で実行させるcron。crontabコマンドで本ファイルを更新する。 | |
| tmp | システム関連の一時ファイル置き場 |