umaskコマンド
概要
umaskコマンドとは、UNIX系OSで広く利用されるコマンドの一つで、新規に作成されるファイルやディレクトリのパーミッション(アクセス権限)を指定するもの。bashなどのシェルの内部コマンドである。通常の設定で運用する場合、新規にファイルを作成するとパーミッションはデフォルトで「666」(rw-rw-rw-/全ユーザー読み書き可能)に、ディレクトリは「777」(rwxrwxrwx/全ユーザー読み書き実行可能)に設定される。
umaskコマンドはこれを変更するコマンドで、各ユーザーについて「与えたくない」(デフォルトから差し引く)権限を指定する。削除する権限の指定は8進表記で「1」が実行・ディレクトリ一覧、「2」が書き込み、「4」が読み込みである。変更しないユーザーは「0」を指定する。
これを3桁の8進数で指定し、先頭が自分(所有者)、中間がグループ、末尾が他のユーザーの変更をそれぞれ表す。例えば、「umaskコマンド 022」と指定すると「自分以外の書き込みを禁止」という意味になる。何も指定せずコマンドのみで実行すると現在の設定が表示される。
「-S」オプションで数字に代えてシンボル(英字)で指定することもできる。「ユーザー=削除する権限」という書式をカンマ区切りで列挙する。ユーザーは「u」が所有者、「g」がグループ、「o」がその他のユーザーで、権限は「r」が読み取り、「w」が書き込み、「x」が実行・ディレクトリ一覧である。例えば、「umaskコマンド -S g=w,o=w」で自分以外の書き込みを禁止することができる。
(2021.6.25更新)