chmodコマンドの使い方
概要
- fileのmode bitを編集するツール
パーミッションとmode bitの対応関係
4+2+1=7
=rwx
4+2+0=6
=rw-
4+0+1=5
=r-x
4+0+0=4
=r--
0+2+1=3
=-wx
0+2+0=2
=-w-
0+0+1=1
=--x
0+0+0=0
=---
; 何もできない
スティッキービットについて
t
というシンボルで、削除できなくするchmod o+t
またはchmod 1XXXX
のような形で先頭に1を加えると設定できる
SGIDについて
g
というシンボルで、設定されたファイルを実行するとグループの権限で実行されるchmod g+s
またはchmod 2XXXX
のような形で先頭に2を加えると設定できる
SUIDについて
s
というシンボルで、設定されたファイルを実行すると所有者の権限で実行されるchmod u+s
またはchmod 4XXXX
のような形で先頭に4を加えると設定できる
ディレクトリに対するパーミッション
- ディレクトリに対しては、ファイルに対するパーミッションとは異なる
r
はディレクトリ内のファイルのリストを表示する権限w
はディレクトリ内のファイルを作成、削除する権限x
はディレクトリ内のファイルにアクセスする権限- 小ディレクトリに権限があっても、大ディレクトリにアクセス権がない場合はアクセスできない
例
ユーザに読み込み権限、書き込み権限を与えて、グループと他者に読み込み権限を与える
$ chmod u=rw,go=r <filename>
または
$ chmod 644 <filename>
すべてに実行権限を与える
$ chmod a+x <filename>
+で権限を付加して、-で権限を削除する
ユーザに実行権限を追加して、グループと他者からは実行権限を削除
$ chmod u+x,go-x <filename>