chmodコマンドとは
chmodコマンドとは、ファイルやディレクトリにアクセスできるかどうかはファイルのpermissionによって決まるため、このpermissionを変更するためのコマンドです。
使い方
usage.ub
chmod [option] モード file1 file2 ...
option | 意味 |
---|---|
-R | ファイルとディレクトリを再帰的に変更する |
-V | 処理した内容を出力 |
-C | 変更が行われた場合のみ処理内容を出力 |
-f | ほとんどのエラーメッセージを出力しない |
permission(権限)について
permissionとは、ファイルやディレクトリのpermissionは'r(読みだし可能)','w(書き込み可能)','x(実行可能)'の三つのアルファベットで表します。
permissionを与える対象は、「所有者」、「所有グループ」、「それ以外」の三つにあ¥分かれている。
'ls -l'コマンドで表示される内容の先頭の文字はファイルの種類で、ディレクトリは'd',シンボリックは'l',通常のファイルは'-'が表示されます。
通常のファイルであれば'-rw-rw-r--'が表示されます。
permission | 数値 | 意味 |
---|---|---|
r | 4 | 読みだし可能 |
w | 2 | 書き込み可能 |
x | 1 | 実行可能 |
- | - | 許可なし |
permissionの変更
権限を追加 ->'+'
権限を禁止 ->'-'
値を指定 ->'='
example.ub
chmod +x myscript #myscriptファイルにxを追加
chmod =rx myscript #myscriptファイルにrxだけを設定、もしもともとwがあったら削除
chmod 755 myscript #myscriptファイルのpermissionを755(rwx r-x r-x)に設定
permissionを与える対象を指定
permissionをを変更する対象を限定したい場合は、所有者なら'u'、所有グループなら'g'、それ以外なら'o'を組み合わせて指定、すべてのユーザーを対象とするなら'c'
example.ub
chmod u+x myscript #所有者だけを対象にmyscriptファイルにxを追加
chmod o-rwx myscript #その他だけを対象にmyscriptファイルにrwxを禁止