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は実行できません。