ファイルパーミッション
一部のシステムは伝統的な POSIX のユーザーとグループのモデルから離れ、各ユーザーごとに新たなグループ「ユーザープライベートグループ」を生成する。ユーザープライベートグループは様々な理由で好ましいとされている。例えば、通常のUNIXでは umask を 022 に設定してグループの書込み権をマスクするが、ユーザーごとにグループを作るので umask を 002 にしてもかまわない。
UNIXのパーミッションの別の表記法として「八進表記」がある。八進表記は3桁か4桁の八進数値である。
3桁の八進表記では、各桁がユーザークラス、グループクラス、その他クラスに対応している。
これら3桁の値はパーミッションをビットとしてそれを集めたものである。つまり、ある値を加算することで特定のパーミッションが付与されていることを表す。
4 を加算するとリード可となる
2 を加算するとライト可となる
1 を加算すると実行可となる
これにより、不明確な組合せはなく、常にあるパーミッションの組合せを表示することができる。
以下は前述の記号表記での例に八進表記を対応させたものである:
"-rwxr-xr-x" は3桁八進表記では 755 となる。
"-rw-rw-r--" は3桁八進表記では 664 となる。
"-r-x------" は3桁八進表記では 500 となる。
UNIXのパーミッションを表示する形式は様々である。最も一般的な形式が記号表記 (symbolic notation) である。この形式ではパーミッションを10文字の文字列で表記する。
最初の1文字はファイルの種別(UNIXファイルタイプ)を表す:
'-' は一般のファイル
'd' はディレクトリ
'b' はブロックデバイスのスペシャルファイル
'c' はキャラクターデバイスのスペシャルファイル
'l' はシンボリックリンク
'p' は名前付きパイプ
's' はUNIXドメインソケット
各クラスのパーミッションは、3文字で構成される。先頭の3文字はユーザー(所有者)クラスを表す。中間の3文字はグループクラスを表す。末尾の3文字はその他クラスを表す。
各クラスの3文字のパーミッションは、順にリード(読出し)、ライト(書込み)、実行を表す。
'r' ならばリード可で、'-' ならばリード不可。
'w' ならばライト可で、'-' ならばライト不可。
'x' ならば実行可で、'-' ならば実行不可。
記号表記の例を、以下に示す。
"-rwxr-xr-x" は、通常ファイルであり、ユーザーは全ての操作が可能、それ以外のクラスはリードと実行だけが可能。
"crw-rw-r--" は、キャラクタースペシャルファイルであり、所有者およびグループはリードとライトが可能、その他のクラスはリードだけが可能。
"dr-x------" は、ディレクトリであり、ユーザーがリードとそこへの移動が可能、それ以外のクラスは何もできない。