ファイルやディレクトリの属性(権限・パーミッション)を変更(change mode?)する。
chmod u+x foo.sh | foo.shに所有者の実行権限を加える |
chmod a+w zzz chmod +w zzz |
全員にzzzの書き込み権限を与える |
chmod 740 hoge | 所有者に全権限、グループに読み出し権限を与え、他人には一切権限を与えない |
権限の意味は、基礎知識参照。
特に“実行可能”の意味は、対象がファイルかディレクトリかによってかなり異なる。
オプション | 説明 |
---|---|
-R | サブディレクトリ内も再帰的にパーミッションを適用する。 |
対象に権限を付与したり削除したりするのを、それぞれ文字列で指定する。
対象 | 動作 | 権限 | |||
---|---|---|---|---|---|
以下の組み合わせ | 以下のいずれか | 以下の組み合わせ | |||
u | 所有者(user) | + | 権限を与える | r | 読み出し |
g | グループ(group) | - | 権限を削除する | w | 書き込み |
o | 他人(other) | = | 特定権限のみ指定 | x | 実行可能 |
a | 全て |
% chmod u+x foo.sh % chmod ug+rw zzz % chmod o-rwx goo % chmod o=r hoge % chmod u=rwx,g=r,o= mmm
3桁の八進数で権限を直接指定する。
一桁の値で読み書き実行の付与する権限を表し、
八進数の桁毎に、左から自分(user)・グループ(group)・他人(other)を表す。
権限 | ||
---|---|---|
以下の論理和 | ||
r | 読み出し | 4 |
w | 書き込み | 2 |
x | 実行可能 | 1 |
% chmod 760 hoge
7は4+2+1で、読込・書込・実行すべてが可能。
6は4+2で、読込・書込が可能(実行は不可)。
0は何もできないことを表す。
一番左の桁が自分(所有者)、真ん中がグループ(所属グループ)、右がそれ以外なので、
760は、自分は全て行うことが出来、同一グループの人は読み書きのみ可能、それ以外の人はアクセス不能であることを示す。
文字列で指定する場合の「chmod u=rwx,g=rw,o= hoge
」と同じ意味。
ファイルやディレクトリを作った際に付与される初期パーミッションは、umaskで指定する。[/2003-09-20]