LoginSignup
22
30

More than 5 years have passed since last update.

パーミッションについて

Last updated at Posted at 2014-07-07

教えてくれ五飛、俺はあと何回ディレクトリのパーミッションをぐぐれば良いんだ。

というわけで、忘れた頃にやってくるディレクトリのパーミッションについてメモしておこうと思いました。

ファイルとディレクトリで異なるパーミッション

Linuxのパーミッションは、8進数を3つ組み合わせた形で指定します。
744 であるとか 777 といった風にですね。
それぞれ1桁ずつ独立しており、各桁が指定するのは以下の様になります。
(左から1桁、2桁、3桁めとします。)

内容
1 所有者
2 グループ
3 その他のユーザ

また、数値が意味するパーミッションをまとめたのが以下の表です。

名前 英字 8進数 ファイル ディレクトリ
読取 r 4 ファイルの表示 ファイル一覧の表示
書込 w 2 ファイルの上書き、変更 新規ファイルの作成、削除
実行 x 1 ファイルの実行 そのディレクトリに移動

8進数というのは、コマンドなどで指定する時の数値になります。

8進数 ls -l表記
7 rwx
6 rw-
5 r-x
4 r--
2 -w-
1 --x

つまり、以下の chmod 754 ./test.sh というコマンドを発行した場合は

test.shファイルを、所有者は「読取」「書込」「実行」権限を有し、
グループは「読取」「実行」権限を有する。
その他のユーザーは「読取」権限のみを有する。

上記のパーミッションをファイルに付与する、という事になります。

ファイルの削除を制限するスティッキービット

上記の通り、ファイルの削除はファイルのパーミッションに関わらず、ディレクトリのパーミッションが参照されます。
しかし、スティッキービットを指定したディレクトリに関しては、
ファイルの削除がファイルの所有者のみに制限されます。

  • drwxrwxrwt

スティッキービットが設定されているディレクトリは、
ファイルリスト取得時、上記の通り末尾に t が付与されます。

ディレクトリの実行権限に関する注意点

ディレクトリの実行権限はサブディレクトリに影響します。

  • /User/DevSong/Documents/

上記の様なディレクトリがあり DevSong ディレクトリに実行権限がない場合、
Documents ディレクトリが例え 777 であったとしても Documents ディレクトリへの書き込み、削除はできません。

22
30
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
22
30