Gnome 3.18の使用。他の家族とファイルを共有していますが、私のディストリビューション(archlinux)のデフォルトのumaskは0022です。したがって、作成されたすべてのファイル/ディレクトリは、私たちの一般的なグループに書き込み可能ではありません。
入れようとしましumask 0002た/etc/profileが、gnomeセッションはまだ使用してい0022ます。ただし、ログインbashシェルでは機能します。
私もこの行を追加しようとしました/etc/pam.d/system-auth:
session required pam_umask.so umask=0002
これはと同じ効果があり/etc/profileます。私は試した
gnome-terminalシェルでumaskを手動で変更した場合、geditなどのアプリケーションを起動して、作成したファイルに必要な権限が付与されます。gnomeメニューからgeditを起動しても、起動しません。だから私の問題は本当にgnomeセッションのumaskを設定することであり、それをどこで行うべきかを見つけることができません。
編集(Gillesのコメントに答えるため):DMとしてgdm 3.18を使用しています。また、pam_umask行をに追加しようとしました/etc/pam.d/gdm-launch-environment。他のすべてのgdm-*ファイルにはsession、system-authファイルからのインクルードが含まれているため、追加のファイルは必要ありません。何も変わりません。
/etc/login.defsが含まれますUMASK 077が、プライマリグループがユーザー名であるユーザーまたはユーザーのいずれかにUSERGROUPS_ENAB yes設定する必要があります。umask00770007
022でumask が含まれている唯一のファイルです/etcが/etc/profile、それは私の最初の試みでした。
に関しては/etc/Xsession.d、私はこのディレクトリを持っていません。その上、ウェイランドがデフォルトのディスプレイサーバーになっているので、自分でまだ使用している場合でも、umaskをX初期化の一部として設定する必要があるかどうかはわかりません。
ttyまたはsshログインに対して有効であり、基本的に同じですが、実際には(を使用pam_umask)です。彼らは私のgnomeセッションでは動作しません。だから私は誰にも賞金をあげることはできません。これがarchlinuxのXorgのgnomeに固有のものかどうかはわかりません。時間があれば他のディストリビューションでテストします。
/etc/Xsession.dか、別のファイルを追加してみます/etc/pam.d(システム全体に設定することを想定しています)。または多分/etc/login.defs。