chmod
chmodは、ファイル、ディレクトリのアクセス権を変更するコマンドです。
構文
- (構文)
- chmod [オプション] <モード> <ディレクトリ/ファイル>
オプション | 説明 |
---|---|
-f | 変更できなかった場合でもエラーを表示しない |
-R | ディレクトリ内ファイルも再帰的に変更する |
モード
モードは所有者、グループ、その他 毎に「読込」「書込」「実行」権限を指定します。
指定は以下の要素を組み合わせて指定します。
u | 所有者 |
---|---|
g | グループ |
o | その他 |
a | 全てのユーザー |
r | 読込権限 |
---|---|
w | 書込権限 |
x | 実行権限 |
+ | 権限を付与 |
---|---|
- | 権限を剥奪 |
= | 権限を変更 |
2進数表記を使って指定するには以下のように指定します。
--- | 0 |
---|---|
--x | 1 |
-w- | 2 |
-wx | 3 |
r-- | 4 |
r-x | 5 |
rw- | 6 |
rwx | 7 |
以下はよく使われるパーミッションの指定パターンです。
777 | rwxrwxrwx | 特に制限を掛けたくないファイル |
755 | rwxr-xr-x | 実行が必要なファイル ※ディレクトリ作成時のデフォルト値 |
644 | rw-r--r-- | 読取のみ必要なファイル |
700 | rwx------ | 所有者以外に何もされたくないファイル |
666 | rw-rw-rw- | 読取と書き換えが必要なファイル |
サンプル
test.txtのアクセス権を「755」(rwxr-xr-x)に変更する
$ chmod 755 test.txt
test.txtに読込み権限を与える
$ chmod +r test.txt
所有者、グループ、その他 全てに読込み権限が付与されます。
test.txtのグループのみに読込み権限を与える
$ chmod g+r test.txt
test.txtの全てのユーザに実行権限を与える
$ chmod a+x test.txt
test.txtから読込み権限を剥奪する
$ chmod -r test.txt
所有者、グループ、その他 全てから読込み権限が剥奪されます。
test.txtの「その他ユーザ」のみから読込み権限を剥奪する
$ chmod o-r test.txt
備考
- chmodは、change modeの略です。
- 権限を変更できる権限が無い場合はchmodは実行できません。