Bonjour,
En fait dans un partage samba "public" (où tous les utilisateurs peuvent écrire dedans..), je voudrais créer un répertoire (avec le compte root par exemple) et que personne ne pourrait supprimer mais que les utilisateurs pourraient écrire dedans...
C'est sans doute très simple mais je n'y arrive pas...
Merci beaucoup pour votre aide
# je me trompe peut-etre mais...
Posté par NeoX . Évalué à 1.
il vaut peut-etre mieux faire un public2
à moins que le but ne soit que les gens deposent dedans mais que personne ne puisse effacer quelque soit le contenu (mais à ce moment là je ne vois pas trop)
[^] # Re: je me trompe peut-etre mais...
Posté par totof2000 . Évalué à 2.
Ca depend .... prend tmp par exemple, tout le monde peut ecrire dedans mais tu ne peux effacer que tes propres fichiers.
à moins que le but ne soit que les gens deposent dedans mais que personne ne puisse effacer quelque soit le contenu (mais à ce moment là je ne vois pas trop)
mkdir toto
chmod 777 toto
chmod +t toto
# ls -ld toto
drwxrwxrwt 2 root wheel 512 Oct 17 09:00 toto
lIl suffit de s'assurer que le repertoire contenant toto ne soit pas modifiable par les utilisateurs et le tour est joué.
# droit en écriture sur un répertoire
Posté par root_rtfm . Évalué à 1.
chmod 1777 mon_repertoire
Normalement tout le monde peut écrire et supprimer SES fichiers mais pas ceux du voisin
Mais je n'ai pas testé :-(
[^] # Re: droit en écriture sur un répertoire
Posté par NeoX . Évalué à 1.
directory mask = 1777
[^] # Re: droit en écriture sur un répertoire
Posté par arn100 . Évalué à 1.
[^] # Re: droit en écriture sur un répertoire
Posté par NeoX . Évalué à 1.
dossier public : tout le monde peut tout faire
dossier public/privé : tout le monde peut tout faire, mais pas supprimer privé/
ah si, je vois bien un methode pour le faire en passant par les ACL.
il faut les ACL sur le systeme de fichier et dans samba
http://www.coagul.org/article.php3?id_article=177
par defaut (en tout cas sur ubuntu 6.10 et 7.04) le ext3 supporte les ACL nativement il suffit alors d'activer les options dans le fstab
et pour samba
ensuite il suffira de dire que ce dossier ne peut etre supprimer que par le root (ou tout autre utilisateur designé)
# Tiens j'ai eu le même problème la semaine dernière
Posté par Nicolas Legrand (site web personnel) . Évalué à 4.
chmod a+t dossier
C'est surtout utilisé aujourd'hui pour ce type de répertoire et notamment pour le répertoire /tmp.
http://en.wikipedia.org/wiki/Sticky_bit
Pas besoin d'utiliser les ACLs s'il n'y a pas plus à faire.
[^] # Re: Tiens j'ai eu le même problème la semaine dernière
Posté par arn100 . Évalué à 1.
Je m'explique :
J'ai qu'un seul utilisateur (qui d'ailleurs est : "utilisateur"...). Tous les étudiants (je travaille dans l'éducation) utilisent tous le même compte (le profil est non-modifiable et téléchargé a chaque session depuis le PDC).
L'utilisateur a acces en lecture/écriture à un partage samba qui s'appelle "public".
Il est donc inutile de mettre le sticky bit car tous les données écrites sur "public" sont créés par l'utilisateur "utilisateur"... chaque peut supprimer ce qu'il veut... pour moi c'est le but.
Ce que je souhaite faire, c'est créer un répertoire dans le partage "public" et que les utilisateurs ne pourront pas supprimer mais ils pourront écrire dedans...
PS: pour tout vous dire c'est pour créer un répertoire "php" que je rends accessible par un serveur apache pour que les étudiants y mettent des fichiers .php....
Comme me l'a conseillé NeoX, je vais regarder du coté des acls... je pourrais faire un nouveau partage "php"... mais je voudrais éviter d'avoir un lecteur réseau supplémentaire (ils en ont déjà pas mal!)
[^] # Re: Tiens j'ai eu le même problème la semaine dernière
Posté par NeoX . Évalué à 1.
je ferais le reglage suivant :
regler apache pour aller prendre le dossier /home/utilisateur/public_html (c'est une option dans la conf)
avec samba mapper un lecteur vers /home/utilisateur
(ou pour les paranos : /home/utilisateur/public_html)
il suffira alors aux utilisateurs de deposer les fichiers dans ce map
et d'aller sur
http://ton_serveur_apache/~utilisateur/le_fichier.php
et pour les structures plus complexes, il suffit de faire un dossier dans le map et d'aller ensuite dans
http://ton_serveur_apache/~utilisateur/le_dossier/
[^] # Re: Tiens j'ai eu le même problème la semaine dernière
Posté par root_rtfm . Évalué à 1.
Reste la solution ( à vérifier ) :
mkdir ./publique
chown root:root publique
chmod 1777 publique
Normalement, le répertoire appartient à root, donc même avec les droits rw, le compte utilisateur ne peut pas le supprimer, par contre il peut écrire et supprimer ses fichiers
# Droit sur le répertoire contenant
Posté par wismerhill . Évalué à 1.
Suivre le flux des commentaires
Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.