Solaris ユーザーズガイド (上級編)

デフォルトのファイルアクセス権の設定方法

umask コマンドを使って、新規に作成される全ファイルと全ディレクトリに対してデフォルトのファイルアクセス権を設定できます。たとえば、セキュリティを重視するため、グループのメンバとその他の全ユーザに対しては、自分の所有するディレクトリに関する読み取り権や実行権 (-rwxr-xr-x) 、ファイルの場合は (-rw-r--r--) だけを付与したい場合があります。そのような場合は、新規に作成されるファイルやディレクトリがこのアクセス権で保護されるようユーザプロファイルファイル内で umask を使えます。

chmod コマンドと同様に、umask では数値コードを使ってファイルの絶対アクセス権を表します。ただし、umask で使うコードは、chmod のコードとは異なる方法で計算します。

たとえば、umask が 000 に設定されている場合は、新規に作成される全ファイルのアクセス権は次のとおりです (読み取り権と書き込み権があり、実行権なし)。

rw-rw-rw- (mode 666)

新規に作成される全ディレクトリのアクセス権は次のとおりです (読み取り権、書き込み権、実行権の全アクセス権がある) 。

rwxrwxrwx (モード 777)

umask で使う値を決定するには、ファイルに割り当てられている現在のデフォルトアクセス権の値から、設定したいアクセス権の値 (chmod コマンドで指定する値と同じ) を差し引きます。この差し引き後の値を umask コマンドで使います。

たとえば、ファイルのデフォルトモードを 666 (rw-rw-rw-)から 644 (rw-r--r--) に変更する場合は、666 から 644 を差し引いた値の 022 をumask コマンドで指定します。


$ umask 022

chmod コマンドの数値コードと同様に、umask では次の 3 桁の数字を使います。

umask コマンドの数値コードの各桁で設定されるファイルアクセス権を表 10-1 に示します。

表 10–1 umask のアクセス権

umask コード 

設定するアクセス権 

0

rwx

1

rw-

2

r-x

3

r--

4

-wx

5

-w-

6

--x

7

---(アクセス権なし)

umask コマンドについての詳細は、『manpages section 1 : User Commands を参照してください。