Linuxコマンド | Linux入門 | Linuxディレクトリ
ドライブ
Windowsには「C:」「D:」のようなドライブという概念があるが、Unix/Linuxにはない。追加ハードディスクやCD-ROMなどは、/dev/hdaや/dev/cdromのようなパス名でアクセスされる。
ディレクトリ
Windowsでいう「フォルダー」とほぼ同じ意味である。ディレクトリ(フォルダー)の区切りには、Windowsでは\Program Files\Microsoft Office\...のようにバックスラッシュ(\)を使うが、Unix/Linuxでは/home/devkuma/public_html/index.htmlのようにスラッシュ(/)を使う。
home
└── devkuma
└── pubilc_html
├── image
│ ├── aaa.gif
│ └── bbb.gif
└── js
├── xxx.js
└── zzz.js
ルートディレクトリ
ディレクトリ階層構造の最上位ディレクトリをルートディレクトリという。最初のスラッシュ(/)はルートディレクトリを表す。
/
ホームディレクトリ
Unix/Linuxでは、各ユーザーに個別のディレクトリが割り当てられる。これを「ホームディレクトリ」という。Linuxでは/home/{ユーザー名}、Mac OS Xでは/Users/{ユーザー名}、古いUnix系OSでは/usr/{ユーザー名}などが主に使われるが、別のディレクトリを使う場合もある。
/home/devkuma
カレントディレクトリ
現在自分がいるディレクトリをカレントディレクトリという。pwdコマンドを実行すると、現在どのディレクトリにいるかを確認できる。たとえば、public_htmlディレクトリにいる状態でpwdコマンドを実行すると、次のように表示される。
/home/devkuma/public_html
親ディレクトリ
ルートディレクトリを除くすべてのディレクトリには親ディレクトリがある。親ディレクトリは..で表される。../xxx.htmlは、現在のディレクトリの親ディレクトリにあるxxx.htmlを意味する。/home/users/../users/devkumaは/home/users/devkumaと同じ意味になる。
パス名
あるディレクトリ内にあるファイルの位置を、/home/foo/index.htmlのように表したものをパス名という。これは、homeディレクトリ内のfooディレクトリにあるindex.htmlというファイルを表す。
絶対パス名
パス名がスラッシュ(/)で始まる場合、ルートディレクトリからの相対位置を表す。これは絶対パス名、またはフルパス名と呼ばれる。
URLの説明とは少し異なる場合がある。たとえば、/home/devkuma/public_html/index.htmという絶対パス名が、URLでは/index.htmという仮想パス名に対応づけられる。
また、BIGLOBEのように、FTPでログインするときとCGIスクリプトが動作するときでルートディレクトリが異なる場合があるため、注意が必要である。
相対パス名
パス名がスラッシュ(/)以外で始まる場合、カレントディレクトリからの相対位置を表す。これを相対パス名という。
たとえば、カレントディレクトリが/home/usersのときにdevkuma/index.htmlと書くと、/home/users/devkuma/index.htmlを指す。
仮想パス名
これはUNIX用語というよりWWW用語であり、http://サーバー名/パス名の/パス名の部分を仮想パス名という。前述したように、絶対パス名とは異なる。
主要ディレクトリ
/
Linux上に存在するすべてのファイルとディレクトリの最上位に位置するトップレベルディレクトリである。
システムの根幹となる最も重要なディレクトリである。
文字列先頭の/は最上位を表し、それ以降の/はディレクトリ区切り文字である。文字列末尾の/は通常省略する。
/boot
Linuxカーネルのメモリイメージと、起動過程で必要な情報ファイルがある。
/bin
Linuxの基本的なコマンド実行ファイルが入っている。
/root
スーパーユーザーrootのホームディレクトリである。
/home
管理者以外のユーザーのホームディレクトリが作成されるディレクトリである。
一般ユーザーアカウントを作成すると、基本的にこのディレクトリ配下に作成される。
/etc
システムやユーザー管理のためのデータファイルと管理者用コマンドを持つ。
システム設定ファイルやアカウント情報が入っており、バックアップ優先度の高いディレクトリである。
/dev
デバイスファイルと呼ばれる、ファイルシステムとハードウェア間のインターフェースを担当するファイルがある。
フロッピーディスク、ハードディスク、CD-ROMなどの各種デバイスファイルが入っている。
/lib
各種言語のためのライブラリを持つ。
システム共有ライブラリディレクトリであり、プログラムに必要なライブラリファイルが存在する。
/mnt
リモートデバイスを利用するためのディレクトリである。
システムで使用する各デバイスのマウントポイントが存在する。
マウントしていない状態では何も表示されないが、特定のデバイスをマウントするとその内容が表示される。
/media
ローカルデバイスを利用するためのディレクトリである。
/sbin
システム運用および管理のためのコマンドファイルがあり、管理者だけが使用できる。
起動過程で必要なコマンドはここにあり、通常動作時に必要な大きなコマンドは/usr/sbinにある。
/usr
Linuxが動作するために必要なほとんどのファイルが格納され、各アカウントのユーザーがインストールするパッケージも存在する。
容量の大きいファイルが存在する。
/proc
カーネルとプロセス情報を取得できる仮想ファイルシステムで、メモリ上に保存されている。
プロセス情報を表すディレクトリであり、psコマンドでプロセス状態を確認するとき、このディレクトリに含まれる内容が表示される。
/proc/cpuinfo
CPUに関する情報が入っている。
/proc/devices
デバイスドライバーに関する情報が入っている。
/proc/kmsg
カーネルから出力されるメッセージが入っている。
/proc/meminfp
物理メモリと仮想メモリに関する情報が入っている。
/proc/net
ネットワークに関する情報が入っている。
/tmp
一時的に使用されるファイルが保存される場所であり、PHPでファイルをアップロードすると最初に保存される場所でもある。セッション情報なども一時的に保管されるディレクトリである。
/var
可変ファイルディレクトリで、システム運用中に生成または変更されるファイルが存在する。
メール、スプール、ネームサーバー、その他セキュリティに関する内容が記録される。
/var/log
ログファイルが存在するディレクトリである。
- /var/log/cron : 定期予約作業ログ
- /var/log/maillog : メールログ
- /var/log/messages : システムメッセージログ
- /var/log/secure : 接続および認証関連ログ
- /var/log/spooler : プリンター接続ログ
- /var/log/dmesg : システムデバイスおよびファイルシステムの起動メッセージログ
- /var/log/boot.log : 起動時のシステムデバイスおよびデーモン実行状態確認ログ
/var/spool/mail
送受信したメールが保存されるディレクトリである。