Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1 Le 20/09/2007, à 17:22

archi02

Dossier partagé en NFS : forcer certaines permissions

Bonjour !

J'ai une question simple : comment faire en sorte que les droits du contenu d'un dossier soient prédéfinis ? C'est à dire choisir d'avance les permissions d'accès aux fichiers qui seront créés à l'intérieur de celui ci...
Même question concernant le groupe d'appartenance de ces fichiers ?

J'explique la situation, elle est simple : il s'agit d'un répertoire partagé entre deux ordis sous ubuntu par NFS. Les utilisateurs de ces deux ordis appartiennent à un groupe commun "casa" (gid=500). Et je souhaite que ces deux utilisateurs aient les mêmes droits dans ce dossier, sur l'intégralité de son contenu, quelques soient les propriétaires des différents fichiers.

En gros, tous les fichiers créés devraient avoir :
* comme propriétaire : xxx:casa
* comme droits d'accès : 770

Comment faire pour mettre cela en pratique ? J'ai entendu parler de commandes telles que setid ou setgid, mais qu'en est-il pour les droits ? Ou faut-il plutôt chercher du coté des options du protocole NFS, et tenter des options au montage ?

Merci pour votre aide ! smile

Dernière modification par archi02 (Le 25/05/2008, à 17:03)

Hors ligne

#2 Le 20/09/2007, à 18:42

archi02

Re : Dossier partagé en NFS : forcer certaines permissions

Un début de réponse à mes propres questions : je suis parvenu à forcer l'attribution du groupe casa à tous les fichiers créés dans le répertoire commun nommé Partage.

Pour cela, j'ai utilisé cette commande sur l'ordi où est physiquement hébergé le dossier :

chmod 2770 ~/Partage

Explications, d'après ce que j'ai compris : le 2 impose à chaque fichier l'héritage du groupe du dossier parent. Un 4 aurait permit l'héritage du propriétaire... puissant non ?

Mais je ne parviens toujours pas à forcer le 770 sur ces fameux fichiers que je crée dans ce dossier. A chaque fois, il attribue un 750 ...

Comment faire ?

Hors ligne

#3 Le 21/09/2007, à 08:46

archi02

Re : Dossier partagé en NFS : forcer certaines permissions

Extrait de http://www.linux-france.org/article/sys … ers-3.html :

Quand un répertoire est setgid, tous les fichiers créés dans ce répertoire appartiennent au même groupe que le répertoire. C'est utilisé par exemple quand plusieurs personnes travaillent sur un projet commun: ils ont alors un groupe dédié à ce projet, et un répertoire setgid appartenant à ce groupe, et ils créent leurs fichiers dans ce répertoire avec les permissions 664: tout le groupe peut alors écrire n'importe quel fichier, vu que tous les fichiers appartiennent au groupe.

OK, c'est tout à fait ca que je souhaite obtenir. Mais pourquoi donc les permissions des fichiers créés sont de type 664 ? Chez moi, après avoir fait un setgid sur mon répertoire ~/Partage, les fichiers créés ont comme droits 750 ... je voulais un 770 mais 664 me conviendrait bien ma foi ! wink

Comment changer ca ?

Hors ligne

#4 Le 21/09/2007, à 09:27

HymnToLife

Re : Dossier partagé en NFS : forcer certaines permissions

Tu peux faire umask 0007. Par contre, ça donnera les permissions 660 (et non pas 770, l'exécution est toujours désactivée par défaut) à tous les nouveaux fichiers crées, pas seulement ceux dans le répertoire partagé. Je ne sais pas s'il y a un moyen d'appliquer ça à un seul répertoire. Par contre, si tu peux mettre ça sur un système de fichiers séparé, c'est très facile à faire en jouant sur les paramètres de montage.


- Rodrigue, as-tu du cœur ?
- Non, mais j'ai du pique !

Hors ligne

#5 Le 21/09/2007, à 09:44

figaro

Re : Dossier partagé en NFS : forcer certaines permissions

Mais pourquoi veut-il des fichiers exécutables pour des fichiers de données?


Le blog de figaro (astuces diverses et tutos Samba pour débutants)
Le blog de cep (astuces Linux avancées)
Debian Lenny 6.0.1, Ubuntu 10.04.2, Ubuntu Remix 9.10, Ubuntu Netbook 10.04

Hors ligne

#6 Le 21/09/2007, à 13:38

archi02

Re : Dossier partagé en NFS : forcer certaines permissions

@figaro : en effet il n'a pas besoin de rendre ses fichiers de données exécutables. C'est pour ça qu'il se contenterait tout à fait d'un 664, ou 660... wink

@HymnToLife : Même si c'est un peu compliqué, je peux imaginer de créer un point de montage spécifique à mon dossier de partage avec cette option umask. Ainsi tout fichier créé en son sein bénéficierait de ces permissions... Par contre, ce paramètre ne passe pas sur un montage NFS... sad or ce type de config n'a d'intérêt que si tout les utilisateurs sont soumis à la même politique !

Hors ligne

#7 Le 21/09/2007, à 13:47

HymnToLife

Re : Dossier partagé en NFS : forcer certaines permissions

Bah le problème, c'est que ce que tu veux faire n'est pas vraiment dans ce que j'appellerais "l'esprit UNIX". Le but d'avoir ce système de permissions avec user/group/world, c'est que le propriétaire d'un fichier puisse faire ce qu'il veut avec son fichier. Donc, forcer les perms est pour ainsi dire impossible, l'utlilsateur aura toujours un moyen de contourner ça, et c'est tant mieux !


- Rodrigue, as-tu du cœur ?
- Non, mais j'ai du pique !

Hors ligne

#8 Le 21/09/2007, à 13:58

archi02

Re : Dossier partagé en NFS : forcer certaines permissions

Oui bien sur c'est une très bonne chose que le propriétaire garde le dernier mot !
Mais attention, je ne souhaite pas attribuer définitivement des droits à un fichier créé !

Je veux juste éviter quand je copie un fichier sur le partage de modifier manuellement ses permissions pour que les autres membres du groupe puissent l'utiliser. J'aimerai que ses permissions prennent spontanément une valeur choisie !

T'imagines quand tu fais une copie sur le partage d'un petit millier de documents, et qu'il faut changer toutes les permissions fichier par fichier ? Bien sur, il existe la ligne de commande pour me faciliter la tache... mais ce serait tellement plus simple si les permissions étaient prédéfinies, non ? smile

Hors ligne

#9 Le 21/09/2007, à 14:13

HymnToLife

Re : Dossier partagé en NFS : forcer certaines permissions

Bah, je ne vois que le umask. Sinon, tu n'as pas moyen de faire ça par FTP ? vsftpd permet ça, aussi.


- Rodrigue, as-tu du cœur ?
- Non, mais j'ai du pique !

Hors ligne

#10 Le 21/09/2007, à 14:27

archi02

Re : Dossier partagé en NFS : forcer certaines permissions

Par FTP ? Boarf...

Je crois que je vais plutôt continuer à chercher... je crois que j'ai une piste par là : http://forum.ubuntu-fr.org/viewtopic.php?id=49077 (le dernier post notamment).

EDIT :
ACL a l'air de permettre ce genre de choses... mais je n'arrive pas à le faire fonctionner correctement sur ma machine... il me pond des choses incompréhensibles...

Dernière modification par archi02 (Le 21/09/2007, à 16:52)

Hors ligne

#11 Le 22/09/2007, à 09:26

archi02

Re : Dossier partagé en NFS : forcer certaines permissions

Bon. ACL ne résout pas du tout mon problème. C'est une solution fantastique pour étendre le nombre d'utilisateurs et de groupes autorisés à utiliser un fichier, un processus... mais prédéfinir des droits dans un emplacement n'est pas son créneau.

Au cours de mes longues recherches d'hier, je me suis aperçu que je n'étais pas le seul tenter de résoudre cette absurdité : il est tout bonnement impossible, dans l'état actuel des choses, de donner simplement et par défaut aux membres d'un même groupe la totalité des droits sur un fichier. sad

Il y aurait sous Gnome peut-être une solution détournée par la modification de l'umask dans un des fichiers .profile. Mais d'une part cette modification concernera tous les fichiers créés par l'utilisateur (pas uniquement dans un dossier choisi) ; et d'autre part cela ne concerne que Gnome (en l'occurrence mon dossier de partage est sur Kubuntu).

Il y aurait aussi une solution en passant par Samba, qui apparemment gère ce type de configuration. Mais est-ce vraiment une solution ?

L'alternative que j'ai fini par dénicher consiste à utiliser une option disponible pour le protocole NFS : la possibilité de prédéfinir un utilisateur associé à la connexion NFS. En clair, de mon ordi distant, je me fais passer lors de la connexion au partage, pour l'utilisateur de la machine hôte. Sur la machine hôte, dans /etc/exports :

/home/user/Partage 192.168.0.2(rw,async,all_squash,anonuid=1000,anongid=500)

Mon problème initial est donc résolu : mes deux utilisateurs ont donc tous les droits sur tous les fichiers créés dans mon dossier Partage... tout simplement parcequ'il n'y en a en fait qu'un seul ! roll Mais comment ferait quelqu'un qui souhaiterait partager un même dossier entre les différentes sessions, donc sans recours possible aux options du protocole NFS ? La question reste donc posée...

A titre informatif, voilà les posts des gens qui posent (entre les lignes) la même question. Il y en certainement d'autres que je n'ai pas vu :
* http://forum.ubuntu-fr.org/viewtopic.php?id=49077
* http://forum.ubuntu-fr.org/viewtopic.php?id=70469
* http://forum.ubuntu-fr.org/viewtopic.php?id=49849
* http://forum.ubuntu-fr.org/viewtopic.php?id=25611
* http://forum.ubuntu-fr.org/viewtopic.php?id=23176
* http://forum.ubuntu-fr.org/viewtopic.php?id=7384
etc...

Dernière modification par archi02 (Le 22/09/2007, à 09:45)

Hors ligne

#12 Le 22/09/2007, à 10:06

figaro

Re : Dossier partagé en NFS : forcer certaines permissions

Je ne comprends pas bien ton problème.

Car si tu crées un groupe spécial pour tes utilisateurs et que tu les mettent dedans, que tu donnes à ton dossier ce groupe, tu donnes les droits (en récursif) 770 au dossier en question et qu'ensuite tu fasses un setgid sur ce dossier, les sous dossiers seront créés en 770 et les fichiers seront créés en 660 avec comme groupe ton groupe spécial et tous tes utilisateurs auront accès (en rw) aux sous dossiers et fichiers.

J'utilise cela sur des partages Samba sans problème.

Dernière modification par figaro (Le 22/09/2007, à 10:08)


Le blog de figaro (astuces diverses et tutos Samba pour débutants)
Le blog de cep (astuces Linux avancées)
Debian Lenny 6.0.1, Ubuntu 10.04.2, Ubuntu Remix 9.10, Ubuntu Netbook 10.04

Hors ligne

#13 Le 22/09/2007, à 12:00

archi02

Re : Dossier partagé en NFS : forcer certaines permissions

Oui... en théorie oui. Bien sur. C'est ce qu'il me semblait quand j'ai imaginé mon truc.

Mais en pratique, j'ai fait exactement ce que tu préconises, et ça ne fonctionne pas ainsi.

Dans un dossier 2770 (setgid activé), dont le groupe est casa (groupe destiné à la fonction du partage, et qui ne contient que les deux utilisateurs en question), tout fichier nouvellement créé l'est en 750. Oui, il hérite bien du groupe de son dossier mère, mais pas de ses droits.

Alors pourquoi ? C'est une grande question. Et c'est toute mon interrogation du post #3. Mais je remarque (au vu des liens que j'ai proposé juste au dessus) que je ne suis pas le seul dont le souci se situe à ce niveau là...


EDIT : je viens de ressayer pour avoir l'esprit tranquille... et je confirme. Que ce soit via nautilus, ou via la console, le résultat est bien le même : 755 pour les dossiers, 644 pour les autres fichiers.

Dernière modification par archi02 (Le 22/09/2007, à 12:14)

Hors ligne

#14 Le 22/09/2007, à 12:12

figaro

Re : Dossier partagé en NFS : forcer certaines permissions

Quand tu crées les droits de ton dossier les crées-tu en récursif ?

chmod -R 2770 /dossier


Le blog de figaro (astuces diverses et tutos Samba pour débutants)
Le blog de cep (astuces Linux avancées)
Debian Lenny 6.0.1, Ubuntu 10.04.2, Ubuntu Remix 9.10, Ubuntu Netbook 10.04

Hors ligne

#15 Le 22/09/2007, à 12:45

figaro

Re : Dossier partagé en NFS : forcer certaines permissions

Sous Samba on dispose de ces options

create mask = 0640
directory mask = 0750

qui permettent de régler les droits dans les différents dossiers partagés. Tes dossiers partagés ils sont sous Samba et accès depuis d'autres PC, ou ce sont des dossiers que tu partages sur le même PC entre différents utilisateurs ?


Le blog de figaro (astuces diverses et tutos Samba pour débutants)
Le blog de cep (astuces Linux avancées)
Debian Lenny 6.0.1, Ubuntu 10.04.2, Ubuntu Remix 9.10, Ubuntu Netbook 10.04

Hors ligne

#16 Le 22/09/2007, à 14:52

archi02

Re : Dossier partagé en NFS : forcer certaines permissions

* Oui, après avoir réessayé, je confirme que l'option -R ne change rien.

* Ce que je tente de mettre en place est un dossier partagé disponible d'une part pour un utilisateur distant sur le réseau connecté en NFS, et d'autre part pour un utilisateur local sur la machine hôte. Je n'utilise donc pas Samba. Il est vrai que je pourrais... mais recourir à cette solution est encore une façon de contourner le problème : d'après ce que j'en sais Samba est plutôt destiné à un réseau hétérogène, ce qui n'est pas le cas ici.

Merci en tout cas de te pencher sur mon problème... sincèrement ! smile

Dernière modification par archi02 (Le 25/05/2008, à 17:04)

Hors ligne

#17 Le 22/09/2007, à 15:52

figaro

Re : Dossier partagé en NFS : forcer certaines permissions

Je ne connais pas bien NFs mais il n'y aurait oas une option du même genre pour forcer les permissions sur les dossiers partagés.

Sans cela à travers un montage du dossier distant sur le client ?


Le blog de figaro (astuces diverses et tutos Samba pour débutants)
Le blog de cep (astuces Linux avancées)
Debian Lenny 6.0.1, Ubuntu 10.04.2, Ubuntu Remix 9.10, Ubuntu Netbook 10.04

Hors ligne

#18 Le 23/09/2007, à 14:41

archi02

Re : Dossier partagé en NFS : forcer certaines permissions

Je n'ai pas trouvé ce type d'option pour NFS... ni même entendu parler. Je crois que les options NFS sont assez limitée en fait...

Qu'entends tu par ceci ?

Sans cela à travers un montage du dossier distant sur le client ?

Hors ligne

#19 Le 23/09/2007, à 15:08

figaro

Re : Dossier partagé en NFS : forcer certaines permissions

Je pense que l'on doit pouvoir monter en NFS un dossier distant comme on le fait sous SMB avec cifs avec un mount quelquechose..... en ligne de commande de façon à mapper le distant sur le PC client.

sudo mount -t nfs <ip_serveur>:<rep_serveur> <point_montage_local>

-o <options>

Dernière modification par figaro (Le 23/09/2007, à 15:12)


Le blog de figaro (astuces diverses et tutos Samba pour débutants)
Le blog de cep (astuces Linux avancées)
Debian Lenny 6.0.1, Ubuntu 10.04.2, Ubuntu Remix 9.10, Ubuntu Netbook 10.04

Hors ligne

#20 Le 23/09/2007, à 15:51

archi02

Re : Dossier partagé en NFS : forcer certaines permissions

C'est ce que je pensais aussi... mes longues recherches m'ont cependant convaincu du contraire : aucune option de ce type, ni pour mount ni pour nfs, n'existent.

Dernière modification par archi02 (Le 23/09/2007, à 20:51)

Hors ligne

#21 Le 23/09/2007, à 19:38

ppmt

Re : Dossier partagé en NFS : forcer certaines permissions

Bon je ne vais rien apporter du tout mais tu as au moinsresolu un des mes problemes

Sur mon PC j'ai plusieurs et j'ai un repertoire commun sur un disque externe ou tout le monde a acces.  Le probleme c'est que qund je vidais la camera dedans par exemple
seul mon compte pouvait voir les photos et pareil pour les operations faites par les
autres comptes,

Avec ta commande archi02 maintenant au moins tous le monde peux tout voir smile

Reste plus qu'a regler le probleme des autres droits smile

Edit: je viens de faire quelque test et ce qui est interressant c'est qu'en creant un fichier il a les droits de mon
user....si je modifie ce fichier avec un autre utilisateur avec vi j'ai un warning quei me previent que le fichier
est REad Only mais j'arrive quand meme a le modifier.
En prime le proprietaire du fichier a aussi changer.

Pas ce que je voulais mais ca me permet de voir qui a enregistre le fichier en dernier smile

Dernière modification par ppmt (Le 23/09/2007, à 19:42)


le dock dont vous avez toujours rêvé  Cairo-Dock
irc://irc.freenode.net/#Cairo-Dock-fr

Hors ligne

#22 Le 18/04/2008, à 13:58

wormsign

Re : Dossier partagé en NFS : forcer certaines permissions

figaro a écrit :

Je ne comprends pas bien ton problème.

Car si tu crées un groupe spécial pour tes utilisateurs et que tu les mettent dedans, que tu donnes à ton dossier ce groupe, tu donnes les droits (en récursif) 770 au dossier en question et qu'ensuite tu fasses un setgid sur ce dossier, les sous dossiers seront créés en 770 et les fichiers seront créés en 660 avec comme groupe ton groupe spécial et tous tes utilisateurs auront accès (en rw) aux sous dossiers et fichiers.

J'utilise cela sur des partages Samba sans problème.

Bonjour Figaro,

Avant tout, merci car j'ai suivi à la lettre les tuto de ton blog pour configurer Samba avec répertoire privé et répertoire commun dans une association. Tout marche très bien.

MAIS, dans cette même association, j'ai 3 postes sous Linux, et eux, quand ils écrivent dans le répertoire commun, ben c'est la merde.
As tu un tuto qui explique comment bien configurer pour obtenir les résultats que tu décris dans la citation ?


wormsign > démontre qu'on peut travailler efficacement sous Ubuntu.
-- recherche développeur PHP/MySQL pour une mission sur octobre, novembre et décembre 2008 --

Hors ligne

#23 Le 25/05/2008, à 16:20

cedric73

Re : Dossier partagé en NFS : forcer certaines permissions

Salut,

est-ce que quelqu'un aurait la solution à ce problème de permissions sur fichiers dans les partages nfs ???
j'ai le même pb que archi02.... et tjrs pas de solution

merci
A+

#24 Le 25/05/2008, à 16:33

figaro

Re : Dossier partagé en NFS : forcer certaines permissions

wormsign a écrit :
figaro a écrit :

Je ne comprends pas bien ton problème.

Car si tu crées un groupe spécial pour tes utilisateurs et que tu les mettent dedans, que tu donnes à ton dossier ce groupe, tu donnes les droits (en récursif) 770 au dossier en question et qu'ensuite tu fasses un setgid sur ce dossier, les sous dossiers seront créés en 770 et les fichiers seront créés en 660 avec comme groupe ton groupe spécial et tous tes utilisateurs auront accès (en rw) aux sous dossiers et fichiers.

J'utilise cela sur des partages Samba sans problème.

Bonjour Figaro,

Avant tout, merci car j'ai suivi à la lettre les tuto de ton blog pour configurer Samba avec répertoire privé et répertoire commun dans une association. Tout marche très bien.

MAIS, dans cette même association, j'ai 3 postes sous Linux, et eux, quand ils écrivent dans le répertoire commun, ben c'est la merde.
As tu un tuto qui explique comment bien configurer pour obtenir les résultats que tu décris dans la citation ?

La réponse


Le blog de figaro (astuces diverses et tutos Samba pour débutants)
Le blog de cep (astuces Linux avancées)
Debian Lenny 6.0.1, Ubuntu 10.04.2, Ubuntu Remix 9.10, Ubuntu Netbook 10.04

Hors ligne

#25 Le 25/05/2008, à 17:02

archi02

Re : Dossier partagé en NFS : forcer certaines permissions

Je me permet de rappeler que nous n'avons jamais nié l'existence d'une solution pour Samba... par contre le mystère reste entier pour NFS.

Ce que tu nous proposes Figaro avec le setid, encore une fois, ne résoud en rien le problème. Désolé d'insister, je te renvoie à mon post #13. Si Samba en tient compte, cela ne semble pas être le cas pour NFS...

Après je dois admettre que je suis sous toujours pour ma part sous Feisty, et donc peut-être les choses ont elles évoluées sans que je le sache...

Hors ligne