Usare Gnome 3.18. Condivido file tra altri membri della famiglia, ma umask predefinito sulla mia distro (archlinux) è 0022. Quindi ogni file / directory creata non è scrivibile per il nostro gruppo comune.
Ho provato a mettere umask 0002in /etc/profilema la sessione di gnome utilizza ancora 0022. Tuttavia, funziona per una shell bash di login.
Ho anche provato ad aggiungere questa riga /etc/pam.d/system-auth:
session required pam_umask.so umask=0002
ha lo stesso effetto di quella in /etc/profile. Provai
Se cambio manualmente umask in una shell gnome-terminal, quindi lancio un'applicazione da essa, ad esempio gedit, quindi i file creati da essa hanno le autorizzazioni desiderate. Se lancio gedit dai menu di gnome, non lo fa. Quindi la mia questione è davvero di impostare l'umask per la sessione di gnome, e non riesco a trovare dove farlo.
EDIT (per rispondere al commento di Gilles): sto usando gdm 3.18 come DM. Ho anche provato ad aggiungere la riga pam_umask in /etc/pam.d/gdm-launch-environment. Tutti gli altri gdm-*file contengono include sessiondal system-authfile, quindi non dovrebbero aver bisogno di più. Non cambia nulla.
/etc/login.defscontiene UMASK 077ma anche USERGROUPS_ENAB yesquale dovrebbe impostare umasksu uno 0077o 0007per gli utenti il cui gruppo principale è il nome utente.
L'unico file che contiene 022per umask in /etcè /etc/profilema quello è stato il mio primo tentativo.
Per quanto riguarda /etc/Xsession.d, non ho questa directory. Inoltre, poiché wayland è ora il server di visualizzazione predefinito, non sono sicuro che umask debba essere impostato come parte dell'inizializzazione X, anche se lo sto ancora usando da solo.
ttyo sshaccessi e sono sostanzialmente le stesse, in realtà (usando pam_umask). Non funzionano con la mia sessione di gnomi. Quindi non posso dare la grazia a nessuno. Non so se questo è specifico per gnome su Xorg su archlinux. Proverò con altre distribuzioni quando avrò del tempo.
/etc/Xsession.do un altro file/etc/pam.d(suppongo che tu voglia impostare questo a livello di sistema). O forse/etc/login.defs.