Linuxコマンド虎の巻

umask

umaskは、ファイルやディレクトリのデフォルトアクセス権を確認・設定するコマンドです。

所有者、グループ、その他 の別に読込み、書き込み、実行の可否を設定します。

構文

(構文)
umask [オプション] [umask値]
【オプション】
オプション説明
-pマスク値を数値で表示する
-Sマスク値を記号で表示する

サンプル

umask値を表示する

$ umask 0002

umask値を表示する

$ umask -p umask 0002

umask値の各桁の意味は以下の通りです。

1桁目
2桁目所有者
3桁目グループ
4桁目その他

test.txtのumask値を記号で表示する

$ umask -S u=rwx,g=rwx,o=rx

記号の意味は以下の通りです。

u:ユーザ g:グループ o:その他 r:読み込み可 w:書き込み可 x:実行可

umask値を設定する

$ umask 077

この設定をすると、グループとゲストは何もできない設定となります。

数値は左から 所有者、グループ、その他 で、意味は以下の通りです。

0:全て許可 1:実行のみ不可 2:書き込みのみ不可 3:書き込み・実行を不可 4:読み込みのみ不可 5:読み込み・実行を不可 6:読み込み・書き込みを不可 7:全て不可

【設定の考え方】
 例)グループとその他は書き込みのみ不可とする
  ⇒ 777(フル権限) - 022(umask値) = 755(実際のパーミッション)

 例)所有者以外は一切の操作を不可とする
  ⇒ 777(フル権限) - 077(umask値) = 700(実際のパーミッション)

備考

  • umask値を設定する時は、使用不可としたい項目に1を立てるように設定します。
    例)011⇒書き込みと実行を不可。 001⇒実行のみ不可。
  • umask値の実行権限は、ディレクトリには有効ですが、ファイルに対しては無視されます。
  • ファイルに実行権限を付与したい場合は、chmodコマンドで明示的に指定してください。