Linuxのディレクトリ名って『なぜこんな名前なの?』とか『これは何の省略形?』と初心者には疑問なものが多いですよね。
暗記するなら由来が分かった方が記憶に残る、ということで調べてみました。
UNIX初期の4つのディレクトリ /bin , /lib , /usr , /etc
UNIX初期には以下4つのファイルがあり、それぞれ以下のような意味で下。
/bin = binary :『実行可能形式のプログラムファイル』が格納されているディレクトリのこと。バイナリと言えば通常は次に紹介するlibraryも含まれますが、ここには実行可能なバイナリファイルのみが格納されています。CentOSではもはや実体は無く、/usr/binへのソフトリンクとなっています。/usr/bin は cd や ls , cp 等の本当に原始的かつよく使われるプログラムが格納されています。
/lib = library :単体では使われないけど他の実行可能形式のプログラム等が共通して参照することができるバイナリファイル、およびそれに関連するソースファイルが格納されています。CentOSではやはり/usr/libへのソフトリンクとなっています。/usr/libには kernel や grub , NetworkManager , firewalld 等のライブラリが格納されています。
/usr = user :ユーザが自由に利用できる領域、という意味でした。UNIX初期時代こそ、homeディレクトリは /usr/homeと/usr配下にあるなど、その由来通りの名前でしたが、現状は/homeはルートディレクトリ直下に移動しており、もはやバイナリファイルやソースファイルの置き場所になっています。
/etc = et cetera :上記のいずれにも該当しないものを格納するディレクトリのこと。しかしこれももはや本来の意味は失われ、事実上パラメータファイルの置き場所になっています。
その他のフォルダ
/proc = process :CPUやメモリ、ディスク、NIC等のリソースのパラメータ等が保管されています。このファイルのパラメータを上書きすることで、すぐに設定が反映されます。
/home = home directory :各システムユーザアカウントが自由に使えるディレクトリです。
/var = variable :頻繁にファイル内容が変動(新規・更新)するものが格納されます。具体的にはログ、メールやプリンタのスプール、Webコンテンツ等です。
/opt = option :パッケージファイルやLinux上で動作するアプリケーション等をインストールするディレクトリです。アンチウィルスソフトやWebメールサーバソフト、バックアップソフト等をインストールすると、このディレクトリに格納されることが多いです。
/mnt = mount :USB外付HDDやUSBメモリ、NFS/CIFSネットワークドライブ等、外部メディアをマウントするときに使われることが多いディレクトリです。
/media = media :CDやDVD等の光学ドライブメディアをマウントするときに使われることが多いディレクトリです。
/run = running program :実行中のプログラムのPIDファイルを格納するときによく使われるディレクトリいです(/var/runもよくつかわれますが)。プログラム実行時の最初にこのPIDファイルが無いことを確認した上で新規にPIDファイルを作り、終了時には削除する、ということを実施します。これにより重複実行を防ぎます。
/sys = system :デバイスやモジュール関連の情報が格納されている。テキスト形式で閲覧可能だが、数字だけが書いてあるなど、人間が見てもよく分からない。
/srv = server :WebやFTP等のユーザ専用ディレクトリです。しかしあまり使われることを見たことがありません。
/root = root :rootユーザのホームディレクトリです。/homeは個人Web公開や個人メール受信などで使われるディレクトリでもありますので、/homeディレクトリが侵略されたときであっても/rootは別で保護されるため安心、という理由で切り出されています。
コメント