広告
広告
https://www.7key.jp/computer/permission.html#permission
Windowsマシンばかり使う方には縁のない言葉だと思います。そもそもこのパーミッションと言うのはなんなのでしょうか。英語の辞書で【permission:許可/認可】となっていますように、コンピュータの世界でのパーミッションとは、ファイル(ディレクトリ)について、誰が何をすることができるかという許可(権限)を表すものなのです。
WinNT系のマシンにも、ユーザ管理というものは言い訳程度についていますよね。しかし、UNIXマシン上では、このユーザ管理が非常に厳密に行われているのです。元々UNIXはマルチユーザOSとして発展してきましたので当然の流れだったのでしょう。
では実際に、UNIX上でどのような管理が行われているのかを見てみます。
パーミッションは、許可対象のユーザ3種類と、許可の内容3種類と、ディレクトリかどうかという、3×3+1の合計10個の情報から成り立っています。表記の仕方は、次の通りです。
drwxrwxrwx
そして、「rwx」を1セットと考えると3つのグループに分けることができます。
d|rwx|rwx|rwx
こんな感じですね。これらは、左から順番に、
となっています。まとめると次の表のようになります。
d | r | w | x | r | w | x | r | w | x |
ディレクトリ | 読込権限 | 書込権限 | 実行権限 | 読込権限 | 書込権限 | 実行権限 | 読込権限 | 書込権限 | 実行権限 |
- | 所有者への権限 | グループへの権限 | その他への権限 |
例えば、「-rw-r--r--」の例では、所有ユーザは読込、書込が許可されており、その他のユーザは読込だけが保護されています。
ただし、ディレクトリのパーミッションは多少意味が違ってきます。ディレクトリにおいて、「r」は閲覧可能かどうかを表します。そのディレクトリに対してlsコマンドが実行できるか、と言い換えても構いません。「w」はそのディレクトリに新しくファイルを作成できることを表します。しかし、「w」は単独では意味をなしません。「x」と一緒に権限を与えてこそ、初めて新規のファイルを作成できるのです。その「x」ですが、カレントディレクトリにできるかどうかを表します。そのディレクトリに対してcdコマンドが実行できるか、と言うことです。
少し話が変わって、パーミッションの表記の仕方で、例えば「755」みたいな表記の仕方を見たことはないでしょうか。これは既述の仕方が違うだけで、表していることは同じなのです。「755」の例で説明しますと以下のように読み替えるのです。
7 → 「ファイル所有者」に「読み取り(4)」+「書き込み(2)」+「実行(1)」の権限を与える
5 → 「所有者のグループ」に「読み取り(4)」+「実行(1)」の権限を与える
5 → 「その他」に「読み取り(4)」+「実行(1)」 の権限を与える
わかりましたでしょうか。数字で表すと、「r」→「4」、「w」→「2」、「x」→「1」となるのです。そして、許可対象のユーザごとに足した結果を「rwx」表記のときと同じ順番で並べるのです。つまり「755」は、「rwxr-xr-x」と同じ意味になるのです。
https://www.7key.jp/computer/permission.html#permission_on_sv
通常、WEBサイトを見ているユーザは、「その他ユーザ」となります。WEBページとして公開するHTML文書などは、「読み取り」 を許可してやらなければなりません。CGI のファイルなど、直接呼び出されるプログラムには、「実行」を許可してやらなければなりません。ただ、ライブラリなど他のプログラムから呼び出されるファイルは「実行」の許可必要はありません。そして、ログファイルなど動的に保存されるファイルには 「書き込み」 を許可しなければなりません。
以下に、よく指定される一般的な値を参考のために載せておきます。よくわからない方は、とりあえず下記の例で試してみてはいかがでしょうか。
広告