No.058権限と所有者

umask

ユーマスク・ファイル作成時マスク設定

知識レベル 基礎安全に試せる一般ユーザーで使えるシェルに組み込み

新規作成物の初期権限を決めるマスク値を表示または設定します。chmodが後から変える道具であるのに対し、umaskは最初から作られる権限を制御します。

答えよく使う形

  1. 022では、通常ファイルは644、ディレクトリは755になります
  2. 077では、所有者以外へ権限を与えません
  3. 記号表記で表示します
visitor@goodly: ~

$ umask 022 touch file1 mkdir dir1 ls -ld file1 dir1

-rw-r--r-- ... file1
drwxr-xr-x... dir1

$ umask 077 touch file2 mkdir dir2 ls -ld file2 dir2

-rw------- ... file2
drwx------ ... dir2

$ umask

覚える順番の中でLPIC-1・97 駅め / 106

どんなコマンド?

こんなときに

ログイン時の既定権限を整える時、サービス実行前に安全な初期権限を決めたい時、共有作業のしやすさと秘匿性のバランスを取りたい時に使います。

umaskは、新しく作成されるファイルやディレクトリの初期権限から、一定のビットを差し引くための仕組みです。シェルの現在の実行環境に作用するため、通常はシェル組み込みとして提供されます。

一般に通常ファイルの基準値は666、ディレクトリの基準値は777と考え、その値からumaskで指定したビットを外して最終的な初期権限が決まります。

実務では、共同作業ディレクトリ、秘密情報の保存先、サービス起動ユーザーの環境などで重要です。

書き方とオプション

組み立ててみるオプションを押すと、下の1行に足されます。もう一度押すと外れます。

$ umask

使用例と実行結果

行を押すとコピーできます。

-rw-r--r-- ... file1
drwxr-xr-x... dir1
022では、通常ファイルは644、ディレクトリは755になります。
-rw------- ... file2
drwx------ ... dir2
077では、所有者以外へ権限を与えません。

まず安全に試す

3分ミッション

手を動かすと覚えやすくなります。できたものに印を付けてください(この端末に残ります)。

0 / 2

つまずいたとき

umask 755のつもりで設定した

原因umaskは与える値ではなく外す値です。

こうする基準値から差し引く仕組みを理解し、022や077の意味を整理します。

親シェルへ反映されない

原因子シェルや別プロセスで実行しました。

こうする現在のシェルで実行するか、初期化ファイルへ設定します。

終わったときの数(戻り値)

$ echo $?

  • 0正常終了。表示または設定に成功しました。
  • >0不正なモード指定などで設定できませんでした。

気をつけることと入れ方

気をつけること

危険度は低いものの、影響は見えにくく長く続きます。シェル初期化ファイルへ誤ったumaskを書くと、新規作成物すべての初期権限が意図せず変わります。

シェル(bash など)に組み込まれたコマンドです。入れるものはありません。

環境による違い

umaskはPOSIXで定義されるシェル組み込みです。外部コマンドではないため、別プロセスで実行しても親シェルの設定は変わりません。

確かめた環境2026-04-09 に確認

よくある質問

022と077はどう使い分けますか。

022は一般的な共有前提、077は秘匿性を高めたい用途でよく使われます。

既存ファイルに影響しますか。

いいえ。新規作成物の初期権限にだけ影響します。

資格試験では

  • LinuC レベル1大事1.02.1 ファイルの所有者とパーミッションLinuCレベル1では、所有者、グループ、パーミッション、生成時マスクの理解が重要です。
  • LPIC-1大事104.5 Manage file permissions and ownershipLPIC-1では、所有者、グループ、モード、生成時マスクの理解が重要です。
  • 共通基礎大事Linuxコマンド基礎

umask を最後まで読みました。

Linux コマンド辞典に戻る127 / 144

Goodly のメニュー