(85) ファイルアクセス許可の初期値を umask で確認・変更

投稿者: | 2018年9月20日

2,813 views

この記事は最終更新から 1416日 が経過しています。

現在の設定値を見てみる。

$ umask
0002

左端の 0は 8進数を表すものなので、マスク値として意味があるのはその右側の三桁 002 だ。

それぞれ左側から、
0 : user (=owner)
0 : group
2 : other
となる。

つまり…
所有者と同じグループのユーザーに対しては、新規ファイル作成時にアクセス権のマスク無し、
部外者に対しては、新規ファイル作成時にアクセス権に 2 のマスクをかける、
ということだ。

では 2とは何か?

マスク値は以下のように定義されている。
001b (1d) : 実行属性
010b (2d) : 書き込み属性
100b (4d) : 読み込み属性

つまり…
2とは、部外者に対して「書き込みアクセスを許可しない」という設定なのだ。

umask コマンドはこのデフォルト値の変更もできる。

例1: 部外者からのアクセスを封じる場合

「部外者には触らせない。ファイルの存在すら教えない。」という厳しい制限にする場合は全部をマスクする。
すなわち、 111b なので 7 とすればよい。

$ umask 0007
$ umask
0007

例2: 自分以外には書き込ませない場合

「自分以外の書き込みを許さない」という場合、グループメンバーと部外者の書き込み属性をそれぞれマスクする。
すなわち、010b なので 4 とすればよい。

$ umask 0044
$ umask
0044

例外?

例外と言うか…
当然だが root ユーザーは何にでもアクセスできる。


コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です