Linuxにおけるパーミッション(アクセス権)とは
パーミッションとはLinux系OSで使用されるファイルやディレクトリのアクセス権のことです。
操作するユーザーによって、読み取りだけを許可するか、書き込みを可能とするかなどの権限を設定することができます。
パーミッションを指定するコマンドと3桁の数字とは
みなさんもどこかで見たことがあるかもしれませんが、パーミッションは「755」などのように3桁の数字で表現されたりします。
パーミッションを設定するコマンドに「chmod」(change mode)があります。
chmodコマンドを使用する際にも、アクセス権を数字で指定することが可能です。
chmod 755 {対象のファイルかディレクトリ}
そのため、権限を設定、変更することがある場合は、この3桁の数字の意味をしっかりと覚えておく必要があります。
「3桁の数字」の順番の意味
それではまずは「755」などのパーミッションを指定する数字の順番の意味を確認していきましょう。
3桁の数字は数字の1つ目、2つ目、3つ目とその順番で「権限の対象」が異なります。
具体的には以下のような数字の順番と権限の対象との対応となっています。
数字の順番 | 権限の対象 |
---|---|
1つ目 | 所有者 |
2つ目 | 所有グループ |
3つ目 | その他のユーザー (上記以外) |
そのため、「755」の場合だと、
- 1つ目の「7」が所有者の権限
- 2つ目の「5」が所有グループの権限
- 3つ目の「5」がその他のユーザーの権限
ということになります。
数字の意味・役割
数字の順番で権限の対象を設定しているということが分かったところで、次にパーミッションの設定時に使用される数字の意味についてです。
先ほど記載したように、3つの数字の順番では権限の対象が変わりました。
数字自体では与えられる権限の内容が変わってきます。
具体的には以下の表の通りです。
数字 | 与えられる権限 |
---|---|
4 | 読み取り(read) |
2 | 書き込み(write) |
1 | 実行(execute) |
「読み取り」「書き込み」「実行」の権限についてそれぞれ数字が割り振られており、複数権限を持つ場合はその数字を足した数字になります。
具体例を挙げると、
- 「読み取り」(4) + 「書き込み」(2) の場合:6
- 「読み取り」(4) + 「実行」(1) の場合: 5
などとなります。
複数権限の場合もまとめると以下となります。
権限設定数字 | 権限設定内容 |
---|---|
7 | 「読み取り」(4) +「書き込み」(2) +「実行」(1) |
6 | 「読み取り」(4) +「書き込み」(2) |
5 | 「読み取り」(4) +「実行」(1) |
4 | 「読み取り」(4) |
3 | 「書き込み」(2) +「実行」(1) |
2 | 「書き込み」(2) |
1 | 「実行」(1) |
よくある設定 755とは?
タイトルにも記載していた「755」など比較的よく使われる権限の指定はどのような権限を付与しているのでしょうか。
777(全権限)
「777」これはよく見るかと言われると、あまり見ることはない気がしますが、「もう誰でもなんでも良いぜ・・・」って設定した場合ですね。
「777」は全てのユーザーが「読み込み」「書き込み」「実行」までなんでもできるという権限設定にです。
権限の対象 | 権限内容 |
---|---|
所有者 | 「読み取り」「書き込み」「実行」 |
所有グループ | 「読み取り」「書き込み」「実行」 |
その他のユーザー (上記以外) | 「読み取り」「書き込み」「実行」 |
764
「764」これはどこかのサーバーで見たことあるような、無いような・・・
所有者には全権限を与えておいて、他のユーザーの場合は何かしら権限を制限しているパターンですね。
所有グループが「6」なので実行が不可、その他のユーザーは「読み取り」しかできないという権限設定です。
権限の対象 | 権限内容 |
---|---|
所有者 | 「読み取り」「書き込み」「実行」 |
所有グループ | 「読み取り」「書き込み」 |
その他のユーザー (上記以外) | 「読み取り」 |
755
「755」もよくありそうなパターン。
「764」同様に所有者には全権限を与えつつ、所有者以外のユーザーに「書き込み」は許さないという権限設定です。
他のユーザーに実行されても問題はないけど、ファイルの内容を書き換えられたくはないという場合はこの設定で問題なさそうです。
権限の対象 | 権限内容 |
---|---|
所有者 | 「読み取り」「書き込み」「実行」 |
所有グループ | 「読み取り」「実行」 |
その他のユーザー (上記以外) | 「読み取り」「実行」 |
644
「644」は基本的には実行することがないファイルなどに指定できそうです。
全ユーザーに実行権限はなく、所有者ユーザーのみ「書き込み」することが可能という権限設定です。
権限の対象 | 権限内容 |
---|---|
所有者 | 「読み取り」「書き込み」 |
所有グループ | 「読み取り」 |
その他のユーザー (上記以外) | 「読み取り」 |
まとめ:Linuxのパーミッションの数字の意味とは
パーミッションとはLinux系OSで使用されるアクセス権のことで、パーミッションの設定の際、3桁の数字でアクセス権の「対象のユーザー」「権限の内容」が表現される場合があります。
数字の順番が権限の「対象のユーザー」、数字自体で「権限の内容」が設定できます。
パーミッションの設定を行う際はしっかりと覚えていないと、間違ったアクセス権を付与してしまったり、セキュリティ的に問題のある管理となってしまう場合もあるので注意が必要です。
また、個人的には数字の意味をよく忘れてしまうので、何度か復習して定着させておきます(笑)
コメント