ファイルやディレクトリのパーミッション変更には「chmod」コマンドを使用する。
「chmod」コマンドにはシンボルモードと数値モードがある。
シンボルモード
シンボルモードでのバーミッション変更。
[bash] chmod [ugoa][+-=][rxw] <ファイル名> [/bash]
[ugoa]:どのユーザーに対するパーミッションか
u | オーナー |
---|---|
g | グループ |
o | その他のユーザー |
a | ugoすべて |
[+-=]:権限の追加または禁止
+ | 権限を追加 |
---|---|
- | 権限を禁止 |
= | 指定した権限と等しくする |
[rxw]:読み取り、書き込み、実行
r | 読み込み |
---|---|
w | 書き込み |
x | 実行 |
例
1)ファイル「test.txt」の権限は「rw-rw-r--」となっており、オーナーとグループに書き込みの権限がある。これをオーナーのみ書き込みができるようパーミッションを変更する。
グループの書き込み権限を削除するということなので、以下のようなコマンドになる。 [bash] $ chmod g-w test.txt [/bash]
2)ファイル「test.txt」の権限は「rw-rw-rw-」となっており、すべてのユーザーに書き込みの権限がある。これをオーナーのみ書き込みができるようパーミッションを変更する。 [bash] $ chmod go=w test.txt [/bash]
数値モード
数値モードでのバーミッション変更。
シンボルモードが現状のパーミッションからの相対的な変更だったのに対し、数値モードでは元のパーミッションの状態にかかわらず、新しいパーミッションへと絶対的な変更を行う。
[bash] chmod <8進数の数値> <ファイル名> [/bash]
数値モードのパーミッションの数値
オーナー | グループ | その他のユーザー | ||||||
r | w | x | r | - | x | r | - | x |
4 | 2 | 1 | 4 | 1 | 4 | 1 | ||
7 | 5 | 5 |
パーミッションを「755」へ変更
以下のコマンドでパーミッションを「755」に変更する。 [bash] $ chmod 755 test.txt [/bash]
パーミッション「755」は オーナー:読み取り、書き込み、実行が可能 その他のユーザー:読み取り、実行が可能