Gnome3、Systemd、umask

Gnome3、Systemd、umask

Nautilus、GEdit、およびその他のGnomeアプリケーションが新しいファイルおよびディレクトリ権限(デフォルトは022ではなく002)を設定する方法を設定しようとしています。

投稿を読んでテストした後、「動作する」ソリューションを見つけました。すべてのユーザーは次の設定を使用します。

mkdir /etc/systemd/user/dbus.service.d/
mkdir /etc/systemd/user/gnome-terminal-server.service.d/
echo -e "[Service]\nUMask=002\n" > /etc/systemd/user/dbus.service.d/override.conf
echo -e "[Service]\nUMask=002\n" > /etc/systemd/user/gnome-terminal-server.service.d/override.conf

より多くの投稿を読んだ後、次のファイルとディレクトリを削除して次のことを試しました。

mkdir /etc/systemd/system/[email protected]/
echo -e "[Service]\nUMask=002\n" > /etc/systemd/system/[email protected]/override.conf

dbus.serviceとgnome-terminal-server.serviceの両方があるため、これを行います。[Eメール保護](システム-cgls):

Control group /:
-.slice
├─user.slice
│ ├─user-1000.slice
│ │ └─[email protected]
│ │   ├─gnome-terminal-server.service
│ │   │ ├─1763 /usr/lib/gnome-terminal/gnome-terminal-server
│ │   │ ├─1771 bash
│ │   ├─dbus.service
│ │   │ └─1973 /usr/bin/nautilus --gapplication-service

残念ながら、端末でumaskを実行すると0002の代わりに0022が印刷されますが、GEditとNautilusは002を使用します(新しいテキストファイルと新しいディレクトリを作成しました)。

私は何を見逃していますか?

答え1

少なくともFedoraでは、bashはumaskを無視します。/etc/bashrc

答え2

少なくともFedora 31には回避策があります。

sudo vi /etc/profile.d/umask.sh
umask <your_umask>

sudo vi /etc/login.defs
UMASK <your_umask>

sudo vi /usr/local/bin/systemd-user
/usr/lib/systemd/systemd --user

sudo chmod a+x /usr/local/bin/systemd-user

sudo vi /usr/lib/systemd/system/[email protected]
ExecStart=-/usr/local/bin/systemd-user

「systemd --user」で始まるすべてのgnomeアプリケーションでumaskを有効にし、gnome-terminalでumaskを有効にします。

関連情報