パーミッションについて

パーミッション (permission) とは?

UNIXのファイルの保護モードを言う。「読み込み」「書き込み」「実行」の3種類のパーミッションが、「ファイルの所有者」「グループユーザー」「その他」のユーザーのそれぞれに対して設定される権限をいいます。

パーミッションの意義

Windows3.1 や Windows9x などを使っているとその意義がすぐに理解できないかもしれませんが、本来1台のマシンを複数ユーザが使用することを前提としたUNIXでは、ファイルやディレクトリがそれぞれ「所有者が誰か」「ファイルの読み書きの権利」等の権限を持っています。

たとえば、このファイルの所有者は「taro」さんで、他人が「読むことは可能」だが、「書き込むことは許可しない」などの権限をファイル毎に設定することができます。

これをホームページ運営に当てはめると、あなたのホームページにあるHTMLファイルや画像データは、もちろんあなた自身が削除したり、書き換えたりすることができます。ところが、別の会員があなたのホームページにあるファイルを勝手に削除したり、書き換えたりすると大変なことになってしまいます。

このようなことはあってはならないため、パーミッションというものが存在する訳です。

内容解説

パーミッションは、「読む」「書く」「実行」の3つの実行権と、「自分」「グループ」「他人」の3つの所有権からなり、それぞれの組み合わせから合計3×3=9とおりのパーミッションが存在します。

「読む」「書く」「実行」の3つの実行権は以下の記号で表されます。

読むことができる (Readable) r
書くことができる (Writable) w
実行することができる (eXecutable) x

これを「自分」「グループ」「他人」の3つの所有権を組み合わせると以下の表のとおりになります。


自分 グループ 他人
読む r-- --- --- --- r-- --- --- --- r--
書く -w- --- --- --- -w- --- --- --- -w-
実行 --x --- --- --- --x --- --- --- --x

ですから、「rwx------」(注1) というパーミッションは、自分にはすべての実行権が許可されるが、自分以外のグループや他人には、何も許さないという意味になります。
また、「rwxrwxrwx」というパーミッションは、すべての人にすべての実行権を許すということになります。

(注1) : 1文字目から3文字目が「自分」の実行権、4文字目から6文字目が「グループ」の実行権、7文字目から9文字目までが「他人」の実行権を示します。


この、「r」「w」「x」によるパーミッションの表記は、数字で表すことも可能です。この場合、「r=4」「w=2」「x=1」という数字をそれぞれに当てはめます。

例1:パーミッションが「rw-r--r--」のとき

「自分」→ r+w = 4+2=6
「グループ」→ r=4
「他人」→ r=4

したがって、「644」と表記することが可能です

例2:パーミッションが「rwxr-xr-x」のとき

「自分」→ r+w+x = 4+2+1=7
「グループ」→ r+x=4+1=5
「他人」→ r+x=4+1=5

したがって、「755」と表記することが可能です