Debian12.4でumaskのデフォルト値を変更する


/etc/profileを変更する方法は動作しなかった。調べてみるとsystemdで設定する手段があるらしい。

# vi /usr/lib/systemd/system/user\@.service.d/99-umask.conf

指定する3桁は減算する値を指定する。
例)027の場合はファイルが640(666-027)になりディレクトリが750(777-027)のパーミッションになる

[Service]
UMask=027

ただしこれを実施すると正常に動作しないアプリケーションが出てくる。例えば「gdm-settings」が正常に動作しなくなる。理由はアプリケーション側がumaskを変更している環境を考慮していないため、アクセスできないファイルが生成されるからだと思われる。なので、そのファイルを下記コマンドで見つけ出し適切なパーミッションを設定すれば解決する。
※分数は実施した時刻に合わせて適当に
※おそらく/usr/とか/etc/とかだと思う

# find /etc/ -mmin -10
# find /usr/ -mmin -10