Linuxのファイル権限
Linuxのファイル権限をよく忘れるので備忘録として残します。
権限変更は、
- 権限の種類の決定
- 適用の種類の決定
- 権限の変更の実行
の順番で行うのがいいかと思います。
権限の種類
権限には「実行」、「書き込み」、「読み取り」の3つがあります。
ファイル、ディレクトリにどのような権限を与えるかは、1〜7の数字によって決定されます。
対応表
数字 | 権限 |
---|---|
1 | 実行 |
2 | 書き込み |
4 | 読み取り |
例
- 実行権限だけを与えたい場合は、「1」にします。
- 書き込み権限だけを与えたい場合は、「2」にします。
- 読み取り権限だけを与えたい場合は、「4」にします。
では、「書き込み権限」と「読み取り権限」の2つを与えたい場合はどうすればいいのでしょうか?
答えは簡単で、与えたい権限の数字を足した数字を与えてあげればいいのです。
-
書き込み・読み取り権限を与える場合
- 書き込み権限は「2」
- 読み取り権限は「4」
なので、これらを足すと
2 + 4 = 6
です。
よって権限は「6」です。 -
書き込み・読み取り・実行権限を与える場合
- 実行権限は「1」
- 書き込み権限は「2」
- 読み取り権限は「4」
なので、これらを足すと
1 + 2 + 4 = 7
です。
よって権限は「7」です。
適用の種類
どのユーザーに権限を与えるかは3つの数字によって決定されます。
左から「所有者 (Owner)」、「所有グループ (Group)」、「その他 (Others)」の順番に、先程の権限の数字を並べて3桁にします。
対応表
順番 | ユーザー | 権限 |
---|---|---|
1 | 所有者 (Owner) | ファイルやディレクトリの所有者に適用される権限 |
2 | 所有グループ (Group) | ファイルやディレクトリが所属するグループに適用される権限 |
3 | その他 (Others) | その他のユーザーに適用される権限 |
例
「所有者」に対して「実行」、「書き込み」、「読み取り」、
「所有グループ」に対して「書き込み」「読み取り」、
「その他」に「読み取り」
を付与したい場合は、
「所有者」の権限は、「7」、
「所有グループ」の権限は、「6」、
「その他」の権限は、「4」
なので、これを左から並べて3桁にすると、最終的な権限は「764」となります。
権限の変更
ファイル、フォルダの権限を変更します。
権限の変更にはchmod
コマンドを使います。
コマンド
$ sudo chmod [権限] [ファイル・フォルダ名]
例
例えば、data
というフォルダに「764」という権限を与えるには、
$ sudo chmod 764 data
とします。
最後に
CUIは慣れると案外使いやすいですよ〜
今回は以上です。