【Bash】「chmod」 - 「ファイル」「ディレクトリ」の「アクセス権」を変更する
Shell Script / シェルスクリプト
【Bash】
「chmod」 - 「ファイル」「ディレクトリ」のアクセス権を変更する
はじめに
「chmod」コマンドは、
「ファイル」「ディレクトリ」への「アクセス権」を設定・変更できるコマンド。
「ファイル」「ディレクトリ」への「アクセス」を
制限したり、解放したりすることができる。
「アクセス権」がないと、
「ファイル」「ディレクトリ」に「アクセス」することができない。
「ファイル」「ディレクトリ」に「アクセス」できないときのトラブル解決方法の1つ。
まずは、「ファイル」に「アクセス」でき「読み込み」「書き込み」「実行」が、
できるようになっているかを確認することから始まる。
Back
「chmod」コマンドとは
「chmod」コマンドは、
「ファイル」「ディレクトリ」の「アクセス権」を変更するためのコマンド。
「アクセス権」がないと、
「ファイル」「ディレクトリ」に「アクセス」することができないことも。
「ファイル」「ディレクトリ」に「アクセス」できないときは、
まず「所有権」「アクセス権」を確認する。
「chmod」コマンドでは、
「所有者」「グループ」「その他のアカウント」
という「3区分」で、
「アクセス権」の制限を行っている。
「アクセス権」の「指定方法」は、
「記号」「数字」を利用して、
「アクセス権」を指定することになっている。
Back
「chmod」コマンドの「使用例」
「chmod」コマンドの具体的な「使用例」をまとめています。
chmod a+x ファイル名(ディレクトリ名) | すべてのユーザーに実行権限を与える |
chmod g+w,o= ファイル名(ディレクトリ名) | グループに書き込み権限をその他のユーザーにはすべて禁止する |
chmod 444 ファイル名(ディレクトリ名) | 数字表記ですべてのユーザーを読み出し権限のみにする |
chmod 770 ファイル名(ディレクトリ名) | 「その他のユーザー」を除く、「所有者」と「グループのメンバー」に対して「数字表記」で、「読み出し」「書き込み」「実行」の権限を付与する |
chmod -R 770 ディレクトリ名 | 「ディレクトリ」と「その中身すべて」に対して、「その他のユーザー」を除く、「所有者」「グループのメンバー」に対して「数字表記」で、「読み出し」「書き込み」「実行」の権限を付与する |
chmod 1777 ファイル名(ディレクトリ名) | スティッキ・ビットを付加する |
chmod u+s ファイル名 | ファイルにセット・ユーザーIDを付加する |
chmod g+s ファイル名 | ファイルにセット・グループIDを付加する |
Back
「chmod」コマンドの「書式」
「chmod」コマンドは、
「オプション」「モード指定」「ファイル名(ディレクトリ名」の順番で指定することで、
「アクセス権」の「管理」「設定」をすることができる。
chmod [-cfvR] [--recursive] [--changes] [--silent] [--quiet] [--verbose] [--help] mode file...
chmod オプション モード指定 ファイル名(ディレクトリ名)
オプション
mode |
変更するアクセス権を記述する。記述方法は後述の「modeの記号による記述方法」を参照
|
file |
アクセス権を変更するファイルやディレクトリを記述する。また,ワイルド・カードも使用できる
|
-c, --changes |
アクセス権限が変更されたファイルのみ詳細に表示する
|
-f, --silent, --quiet |
アクセス権限を変更できなかった場合でも,エラー・メッセージを表示しない
|
-v, --verbose |
アクセス権限の変更を詳細に表示する
|
-R, --recursive |
ディレクトリとその中身のアクセス権限を再帰的に変更する
|
--help |
chmodコマンドの使用法を表示する
|
modeの記号による記述方法
[ugoa][+-=][rwx],... |
権限はカンマで区切ることによりいくつでも記述できる。また,最初のユーザーの設定項目を省略したときは,すべてのユーザーと同等の意味になる
|
u | 所有者の権限 |
g | グループの権限 |
o | その他のユーザーの権限 |
a | すべての権限 |
+ | 後に記述した権限を付加する |
- | 後に記述した権限を削除する |
= | 後に記述した権限にする |
r | 読み込み権限 |
w | 書き込み権限 |
x | 実行権限 |
s | セットID |
t | スティッキ・ビット |
modeの数字による記述方法
3桁の8進数を使用して権限を指定することもできる。左から順に所有者,グループ,その他のユーザーの権限を表す。
0 | --- |
1 | --x |
2 | -w- |
3 | -wx |
4 | r-- |
5 | r-x |
6 | rw- |
7 | rwx |
特殊なモード
読み出し・書き込み・実行のほか「chmod」では「スティッキ・ビット」および「セットID」の指定をすることができる。
drwxrwxrwt | スティッキ・ビット。指定したディレクトリ以下のファイルの削除・ファイル名の変更は所有者のみが行える |
-rwsr-xr-x | セット・ユーザーID。他人が実行する際,所有者の権限で実行する |
-rwxrwsr-x | セット・グループID。他人が実行する際,グループの権限で実行する |
Back