ディレクトリ構成を調べてみる

先日 Leopard が正式に UNIX として認定されたらしい。
http://www.apple.com/jp/macosx/technology/unix.html
だから何だ、と言われても困るんだけど、本物の UNIX を触っている、という安心感は結構あるかな。僕の好きな OS であるところの LinuxUNIX 認定されてないのは知ってるけど、それと比べても、Mac OSUNIX はまがい物、という偏見が長い事僕の中にあって、それが Mac OS Xを手にしない理由の一つだっただけに、今回の認定の意味は、個人的にかなり大きいかな、と。
ここからは、Mac OS XUNIX として実際どうなのか、について調べてみようかな、と思う。どんな UNIX で、どこまで UNIX らしいのかが気になったので。あと、内部構造を知れば、それだけ早くMac OS X に習熟できるだろうとも思うので。
まずは、全体像を俯瞰するため、ディレクトリ構成から見る事にする。UNIX は、あらゆる事をファイルベースで解決する OS (例えば、デバイス情報に対して、ファイルにアクセスするような使い方が出来る)なので、ファイルと、その置き場であるディレクトリ構成を知る事が、UNIX としての Leopard を知るには手っ取り早いアプローチになる、と考えるからだ。ルートディレクトリ(一番上の階層)以下は、こんな感じになってた(とりあえず暫定で役割も書いてみた)。

  • Applications : 各種アプリケーションのファイル本体が置いてある。
  • Library : 各ユーザごとのいろいろなデータやシステム関連の情報が保存される。実体は /System/Library へのシンボリックリンク(ショートカット)。ホームディレクトリ→ライブラリ、でアクセスできる。
  • Network : ?
  • System : Library ディレクトリを持つ。
  • Users : 実質的なホームディレクト
  • Volumes : 各メディアをマウントするディレクトリ。
  • bin : UNIX としての基本コマンド
  • cores : ?コアファイルでも置くのかな。
  • dev : デバイスファイルを格納するディレクトリ。
  • etc : /private/etc へのシンボリックリンク。apache2 など、基本的な設定ファイル情報はここに集められる。
  • home : とくに何も見当たらず。あとで何か/home直下に作りたい!と思うかもだけど。
  • mach_kernel : カーネルっぽい。
  • mach_kernel.ctfsys : ?
  • net : ネットワーク情報にアクセスするためのパスと思われる。
  • private : 謎のディレクトリ。いくつかのサブディレクトリを持つ。
  • sbin : UNIX としての管理用コマンド。
  • tmp : UNIX としてのファイル置き場。
  • usr : UNIX としてのモジュール置き場。
  • var : UNIX としてのログファイル置き場。
  • ユーザーズガイドと情報 : よくわからないがマニュアルの置き場、と思われる。

proc が無いのがちょっと不思議。boot が無く、カーネルが直接置いてあるのも興味深い。大文字で始まるディレクトリ名が多いのもちょっと不思議。いろいろ面白いなあ。