Open2
パーミッション変更のコマンド早見表
概要
普段Windowsを利用していると、あまりファイルの所有者やアクセス権限(パーミッション)を意識することは少ないと思います。
ただしLinuxとなると別で、ログインしているユーザーによってフォルダ・ファイルに設定された所有者(ユーザー・グループ)、パーミッションによって、操作が制限される場合があります。
これらを変更するコマンドは以下の通りです。
コマンド | 役割 |
---|---|
chown |
ユーザーおよびグループを変更するコマンド |
chmod |
フォルダやファイルの権限を変更するコマンド |
その中でも今回は複雑な、chmodの早見表を作ります。
パーミッションの基本
パーミッションを考慮する際に必要なのが三点です。
Who(誰に)
誰に権限を与えるかを検討する必要があります。
- ユーザー所有者 (u)
- グループの所有者 (g)
- その他 (o) ※上記2つにあてはまらないユーザー
What(何を)
前段で、誰に権限を与えるかを決めたら、
その所有者に対してどのような権限を設定するかが必要です。
- 読み取り (r)
- 書き込み (w)
- 実行 (x)
- 権限なし(-)
パーミッション | シンボリック値 | 8進数値 |
---|---|---|
なし | --- | 0 |
実行 | --x | 1 |
書き込み | -w- | 2 |
書き込みおよび実行 | -wx | 3 |
読み取り | r-- | 4 |
読み取りおよび実行 | r-x | 5 |
読み取りおよび書き込み | rw- | 6 |
読み取りおよび書き込みおよび実行 | rwx | 7 |
シンボリックの基本
パーミッションは、所有者、グループ、その他の3つのブロックに分かれており、それぞれ
- 読み取り(r)
- 書き込み(w)
- 実行(x)
の3つの権限が8進数で表されます。
ユーザー所有者 (u)/グループの所有者 (g)その他 (o)
u-1 | u-2 | u-3 | g-1 | g-2 | g-3 | o-1 | o-2 | o-3 | 数値 |
---|---|---|---|---|---|---|---|---|---|
r | w | x | r | w | x | r | w | x | 777 |
よく利用されるパーミッション
番号 | シンボリック値 | 共通 | ユーザー | グループ | その他 | ユースケース |
---|---|---|---|---|---|---|
644 | rw-r--r-- | r | r,w | r | r | 一般ファイル |
755 | rwxr-xr-x | r,e | r,w,e | r,e | r,e | 実行可能ファイル、ディレクトリ |
666 | rw-rw-rw- | r,w | r,w | r,w | r,w | 共有ファイル |
777 | rwxrwxrwx | r,w,e | r,w,e | r,w,e | r,w,e | 完全公開(注意) |
600 | rw------- | - | r,w | - | - | 秘密ファイル |
700 | rwx------ | - | r,w,e | - | - | 個人用スクリプト |
711 | rwx--x--x | e | r,w,e | e | e | 共有実行ファイル |
750 | rwxr-x--- | - | r,w,e | r,e | - | グループ内共有 |
440 | r--r----- | - | r | r | - | グループ内読み取り専用 |
参考
chmodの実行モード
- 数値モード
- 記号モード
先に紹介したのが、数値モードです。
もう一つが記号モードといものがあり、その名前の通り、記号でパーミッションを設定できるらしい。
一般的には数値モードで実行することが多い気がするが、記号モードのほうが
分かりやすさはあるので、こちらもマスターしたい。