62 votes

Comment définir l'échelle du système, umask?

Je travaille dans un laboratoire où nous sommes fonctionnant sous Linux (Debian et Ubuntu). Les noms d'utilisateur et les noms de groupe sont gérés par la SNI et yp. Nous avons des utilisateurs "ordinaires" que tout le monde a accès à d'exécuter les expériences et puis nous avons chacun nos propres utilisateurs, en plus il y a un groupe commun que nous sommes tous membre du.

Comment puis-je faire de telle sorte que tous les fichiers et répertoires sur le partage /home/ lecteur (NFS) est en lecture/écriture(/exécutable) par utilisateur/groupe? Fondamentalement, ce que je veux, c'est chmod -R 664 /home chgrp -R commongroup /home ou, de manière équivalente, umask 0002.

Mais l'exécution des commandes ci-dessus résout uniquement les fichiers dans le dossiers et umask fonctionne uniquement pour les utilisateurs et doit être exécuté à chaque fois qu'un utilisateur ouvre une session dans ie. dans l' .bashrc fichier (et ce travail pour les changements de mode via gnome?). Est-il à l'échelle du système de commande ou de réglage que je pourrais utiliser pour faire en sorte que notre commongroup a accès en écriture aux fichiers communs?

95voto

ephemient Points 87003

Debian et Ubuntu navire avec pam_umask. Cela vous permet de configurer umask en /etc/login.defs et ont eux s'appliquent à l'échelle du système, indépendamment de la façon dont un utilisateur se connecte.

Pour l'activer, vous devrez peut-être ajouter une ligne d' /etc/pam.d/common-session de la lecture

session optional pam_umask.so

ou c'est peut-être déjà activé. Puis modifiez /etc/login.defs et de modifier l' UMASK ligne

UMASK           002

(la valeur par défaut est 022).

Notez que les utilisateurs peuvent toujours annuler umask dans leur propre ~/.profile ou ~/.bashrc ou similaire, mais (au moins sur les nouveaux Debian et Ubuntu installations), il ne devrait pas être impérieuses de umask en /etc/profile ou /etc/bash.bashrc. (Si il y en a juste les supprimer.)

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X