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 01/03/2010, à 00:00

zaz

[résolu] Chown sans droit 'sudo'

Bonsoir a tous,

J'ai deux utilisateurs (user1, user2), tout deux sans privilèges sudo (et qui n'ont pas de raison de l'avoir).
Il faudrait parfois qu'ils puissent déplacer un fichier entre eux, et qu'ils en changent le propriétaire.

Pour la copie, ça va, il suffit de faire un répertoire "ouvert" chez user2, et user1 peut y mettre des fichiers.
Mais je n'arrive pas a changer le proprietaire, lorsque user1 fait "chown user2 monfichier.txt", j'obtient:
chown: changement de propriétaire pour `monfichier.txt': Opération non permise

Pourtant, user1 est bien le propriétaire du fichier !

Et dans l'autre sens, impossible aussi pour user2 de prendre possession du fichier, quand bien même le fichier est accessible en lecture/ecriture pour tout le monde.

La seule solution actuelle est que user2 fasse une copie du fichier (ii devient alors proprietaire de la copie) puis que user1 supprime le fichier. Mais c'est tout de même un peu absurde (et pénible, certains fichiers sont des .dv de 10Go...).

Config: Ubuntu 9.10, disque local en ext3.

Une idée ?

Dernière modification par zaz (Le 01/03/2010, à 23:12)

Hors ligne

#2 Le 01/03/2010, à 00:10

Qid

Re : [résolu] Chown sans droit 'sudo'

zaz a écrit :

Une idée ?

disons que ta demande ne tien pas la route ...
bon ok un utilisateur devrais pouvoir se déposséder d'un fichier
mais c'est tout a fait logique qu'il ne puisse pas le "balancer" à n'importe qui
je crois que ta seul parade c'est de jouer avec les groupes et encore


"GNU/Linux c'est que du bon mais M$ Windows ce n'est pas si mal"
Référent technique Ubuntu d'un Groupe d'Utilisateur du Libre
plus d'info sur mon profil

Hors ligne

#3 Le 01/03/2010, à 00:20

zaz

Re : [résolu] Chown sans droit 'sudo'

Qid a écrit :

disons que ta demande ne tien pas la route ...

Alors dans l'autre sens, ça serait bien que user2 puisse s'approprier un fichier qui est de toutes façon mis en lecture /ecriture pour tout le monde ?

Sinon, je vois pas comment on fait pour travailler a plus de 1 sur une machine ???

Hors ligne

#4 Le 01/03/2010, à 00:33

Qid

Re : [résolu] Chown sans droit 'sudo'

zaz a écrit :

Sinon, je vois pas comment on fait pour travailler a plus de 1 sur une machine ???

je te l'ai dit : c'est une question de groupe wink


"GNU/Linux c'est que du bon mais M$ Windows ce n'est pas si mal"
Référent technique Ubuntu d'un Groupe d'Utilisateur du Libre
plus d'info sur mon profil

Hors ligne

#5 Le 01/03/2010, à 00:34

zaz

Re : [résolu] Chown sans droit 'sudo'

J'ai fini par trouver un élément de réponse :
http://docstore.mik.ua/orelly/unix/upt/ch22_21.htm

Est-ce que les quotas seraient activés par défaut ??
Parce qu'apparement, ce que je veux faire n'a rien d'absurde, ils expliquent même le contournement pour y arriver (via un cp, ça qui est tout de même méga lourd pour des gros fichiers).

Hors ligne

#6 Le 01/03/2010, à 00:39

Qid

Re : [résolu] Chown sans droit 'sudo'

zaz a écrit :

J'ai fini par trouver un élément de réponse :
http://docstore.mik.ua/orelly/unix/upt/ch22_21.htm

j'ai comme l'impression d'avoir rien capté ... hmm
mais tu te complique la vie !


"GNU/Linux c'est que du bon mais M$ Windows ce n'est pas si mal"
Référent technique Ubuntu d'un Groupe d'Utilisateur du Libre
plus d'info sur mon profil

Hors ligne

#7 Le 01/03/2010, à 00:40

zaz

Re : [résolu] Chown sans droit 'sudo'

Qid a écrit :
zaz a écrit :

Sinon, je vois pas comment on fait pour travailler a plus de 1 sur une machine ???

je te l'ai dit : c'est une question de groupe wink

Oui, mais ça ne me convient pas non plus.
Je n'ai pas envie que user2 puisse accèder a tous les fichiers de user1 (et inversement).
Pas plus que je n'ai envie de créer un groupe 'user12' pour les fichiers en question (et lorsque j'aurais un 3eme user, il me faudra user12, user13, user23... bonjour le bazar).

Je veux dire : je vois bien des solutions "massue" pour résoudre le problème (genre donner a tout le monde le droit "sudo"), mais c'est franchement pas beau du tout.

Sinon un script, qui tournerait en root, et permettrait a n'importe qui d'envoyer un fichier a qq1 d'autre. C'est pas super super joli mais ptet un moindre mal.

Hors ligne

#8 Le 01/03/2010, à 00:43

Qid

Re : [résolu] Chown sans droit 'sudo'

zaz a écrit :

Je n'ai pas envie que user2 puisse accèder a tous les fichiers de user1 (et inversement).

je n'ai jamais dit ça ... ... apres on a pas toutes les info pour te donner la meilleur solution dans ce cas hein


"GNU/Linux c'est que du bon mais M$ Windows ce n'est pas si mal"
Référent technique Ubuntu d'un Groupe d'Utilisateur du Libre
plus d'info sur mon profil

Hors ligne

#9 Le 01/03/2010, à 00:46

zaz

Re : [résolu] Chown sans droit 'sudo'

Qid a écrit :
zaz a écrit :

Je n'ai pas envie que user2 puisse accèder a tous les fichiers de user1 (et inversement).

je n'ai jamais dit ça ... ... apres on a pas toutes les info pour te donner la meilleur solution dans ce cas hein

Oui oui, c'est clair.
Merci de ton aide en tout cas !

Hors ligne

#10 Le 01/03/2010, à 02:05

alej

Re : [résolu] Chown sans droit 'sudo'

zaz a écrit :

Une idée ?

Toutafé (et ta demande tient parfaitement la route wink)...

$ sudo apt-get install bindfs

Hors ligne

#11 Le 01/03/2010, à 02:18

Qid

Re : [résolu] Chown sans droit 'sudo'

alej a écrit :

ta demande tient parfaitement la route wink

bah excuse moi mais moi je trouve pas ça logique c'est tout wink
quant à ton bindfs avec la doc ça aurait été mieu
(mon pire ennemi gogole n'a comme d'hab pas voulu m'aider)


"GNU/Linux c'est que du bon mais M$ Windows ce n'est pas si mal"
Référent technique Ubuntu d'un Groupe d'Utilisateur du Libre
plus d'info sur mon profil

Hors ligne

#12 Le 01/03/2010, à 02:37

alej

Re : [résolu] Chown sans droit 'sudo'

Qid a écrit :

bah excuse moi mais moi je trouve pas ça logique c'est tout

Sauf que la question, c'était pas de savoir si tu trouvais ça logique ou pas...

Hors ligne

#13 Le 01/03/2010, à 09:07

zaz

Re : [résolu] Chown sans droit 'sudo'

alej a écrit :
zaz a écrit :

Une idée ?

Toutafé (et ta demande tient parfaitement la route wink)...

$ sudo apt-get install bindfs

Mmmm !!! Ca c'est intéressant !
J'ai trouvé par exemple: http://manpages.ubuntu.com/manpages/intrepid/man1/bindfs.1.html
En particulier : --create-as-mounter, -o create-as-mounter
              All new files and directories will  be  owned  by  the  mounter.
              This is the default behavior for non-root mounters.

Donc il suffit que user2 monte un répertoire comme ça en lecture/écriture pour tout le monde, et tous les fichiers qui y sont déposés deviennent immédiatement propriété de user2 !

Merci alej, je teste dès que possible !

Dernière modification par zaz (Le 01/03/2010, à 09:07)

Hors ligne

#14 Le 01/03/2010, à 09:55

nesthib

Re : [résolu] Chown sans droit 'sudo'

Il n'y a que root qui puisse changer les permissions pour une simple et bonne raison : tu pourrais sinon obtenir une élévation de privilèges en attribuant la possession d'un script exécutable par tous à root ou à un utilisateur donc tu veux accéder aux droits. Ceci est dû au fait qu'un exécutable se lance avec les droits de son propriétaire.

Pourquoi veux-tu absolument changer les droits de ton fichier ?
Sinon pour un gestion plus fine des permissions (très intéressant à partir de 2-3 utilisateurs) je te conseille de lire la doc sur les acl.


GUL Bordeaux : GirollServices libres : TdCT.org
Hide in your shell, scripts & astuces :  applications dans un tunnelsmart wgettrouver des pdfinstall. auto de paquetssauvegarde auto♥ awk
  ⃛ɹǝsn xnuᴉꞁ uʍop-ǝpᴉsdn

Hors ligne

#15 Le 01/03/2010, à 10:39

zaz

Re : [résolu] Chown sans droit 'sudo'

nesthib a écrit :

Pourquoi veux-tu absolument changer les droits de ton fichier ?

Il faut imaginer un contexte comme une école par exemple:
* seul l'administrateur a les droits de sudo (normal)
* les éléves ont chacun leur fichiers a eux

Ce qui me semble le plus logique, c'est que chaque élève soit propriétaire de ses fichiers. C'est d'ailleurs ce qui se passe par défaut, les fichiers étant automatiquement propriété de celui qui les crée.

Mais il peut arriver qu'un fichier de eleve1 doivent par la suite être utilisés par eleve2, se pose la question de changer le propriétaire.

La création de groupes ou la modifications dans les acl permet probablement de faire la même chose, mais je trouve que ça complique les choses, sans garantir une bonne sécurité, notamment parce que eleve1 ne devrait plus pouvoir modifier les fichiers qu'il a envoyé a eleve2.

Je comprend bien la logique de ne pas pouvoir attribuer un fichier a n'importe qui (a root par exemple), mais beaucoup moins bien la logique de ne pas pouvoir s'attribuer un fichier sur lequel on est en r/w (auquel cas on peut parfaitement le renommer, le recopier, puis supprimer le fichier initial).

Hors ligne

#16 Le 01/03/2010, à 13:13

nesthib

Re : [résolu] Chown sans droit 'sudo'

les acl sont surement la solution idéale pour gérer un cas de ce type (école), tu peux définir des règles sur les dossiers pour que tout ce qui y est créé ait des permissions/propriétés par défaut.

edit : après réflexion c'est en fait impossible de faire ce que tu désires au niveau du système de fichier, avec le sgid sur un dossier tu peux attribuer un groupe par défaut, avec le suid ceci a été supprimé pour des questions de sécurité (même problème que chown)
En revanche tu peux tout à fait faire réaliser cette tâche par un script qui surveille les créations/déplacements de fichiers dans ton dossier et change le propriétaire en conséquence (voir inotify par exemple).

Dernière modification par nesthib (Le 01/03/2010, à 14:26)


GUL Bordeaux : GirollServices libres : TdCT.org
Hide in your shell, scripts & astuces :  applications dans un tunnelsmart wgettrouver des pdfinstall. auto de paquetssauvegarde auto♥ awk
  ⃛ɹǝsn xnuᴉꞁ uʍop-ǝpᴉsdn

Hors ligne

#17 Le 01/03/2010, à 14:45

nesthib

Re : [résolu] Chown sans droit 'sudo'

un exemple de script :

DOSSIER_SURVEILLE='/mon/dossier'
UTILISATEUR='utilisateur'
inotifywait -m -r --format '%w%f' -e create -e moved_to "${DOSSIER_SURVEILLE}" | while read LINE
do
    chown -R ${UTILISATEUR}:${UTILISATEUR} "${LINE}"
done

à lancer en root


GUL Bordeaux : GirollServices libres : TdCT.org
Hide in your shell, scripts & astuces :  applications dans un tunnelsmart wgettrouver des pdfinstall. auto de paquetssauvegarde auto♥ awk
  ⃛ɹǝsn xnuᴉꞁ uʍop-ǝpᴉsdn

Hors ligne

#18 Le 01/03/2010, à 16:19

zaz

Re : [résolu] Chown sans droit 'sudo'

nesthib a écrit :

un exemple de script :

DOSSIER_SURVEILLE='/mon/dossier'
UTILISATEUR='utilisateur'
inotifywait -m -r --format '%w%f' -e create -e moved_to "${DOSSIER_SURVEILLE}" | while read LINE
do
    chown ${UTILISATEUR}:${UTILISATEUR} "${LINE}"
done

à lancer en root

Woooo !!! Ca a l'air super joli ça, merci bien !!!! J'essaye ce soir (pasque la, sous windows, je vais avoir du mal hmm )

Hors ligne

#19 Le 01/03/2010, à 16:50

Totor

Re : [résolu] Chown sans droit 'sudo'

Bonjour,

Il y a une façon assez simple de s'approprier un fichier dès lors que l'on a au moins les droits de lecture.
Il suffit en fait d'en faire une copie si l'on a pas besoin de travailler sur l'original.
La copie doit être réalisée avec l'utilisateur qui devra en être propriétaire.

Dernière modification par Totor (Le 01/03/2010, à 17:02)


-- Lucid Lynx --

Hors ligne

#20 Le 01/03/2010, à 17:40

nesthib

Re : [résolu] Chown sans droit 'sudo'

@Totor : wink

zaz a écrit :

La seule solution actuelle est que user2 fasse une copie du fichier (ii devient alors proprietaire de la copie) puis que user1 supprime le fichier. Mais c'est tout de même un peu absurde (et pénible, certains fichiers sont des .dv de 10Go...).


GUL Bordeaux : GirollServices libres : TdCT.org
Hide in your shell, scripts & astuces :  applications dans un tunnelsmart wgettrouver des pdfinstall. auto de paquetssauvegarde auto♥ awk
  ⃛ɹǝsn xnuᴉꞁ uʍop-ǝpᴉsdn

Hors ligne

#21 Le 01/03/2010, à 17:58

Qid

Re : [résolu] Chown sans droit 'sudo'

Totor a écrit :

Il y a une façon assez simple de s'approprier un fichier dès lors que l'on a au moins les droits de lecture.
Il suffit en fait d'en faire une copie si l'on a pas besoin de travailler sur l'original.
La copie doit être réalisée avec l'utilisateur qui devra en être propriétaire.

bah on lui a deja dit en plus ... sinon moi je lui proposait de jouer avec les groupes
mais ça lui plait pas non plus de toutes évidence ... hmm


"GNU/Linux c'est que du bon mais M$ Windows ce n'est pas si mal"
Référent technique Ubuntu d'un Groupe d'Utilisateur du Libre
plus d'info sur mon profil

Hors ligne

#22 Le 01/03/2010, à 18:12

nesthib

Re : [résolu] Chown sans droit 'sudo'

en même temps Qid c'est vrai que c'est bête de faire une copie pour la supprimer alors qu'il y a tous les outils dispos pour faire ça proprement wink
pour les groupes c'est une bonne idée en utilisant les acl, sinon pour plus de 2 personnes ça devient vite inutilisable…


GUL Bordeaux : GirollServices libres : TdCT.org
Hide in your shell, scripts & astuces :  applications dans un tunnelsmart wgettrouver des pdfinstall. auto de paquetssauvegarde auto♥ awk
  ⃛ɹǝsn xnuᴉꞁ uʍop-ǝpᴉsdn

Hors ligne

#23 Le 01/03/2010, à 20:24

Totor

Re : [résolu] Chown sans droit 'sudo'

dsl, j'ai lu rapidement et en diagonale...:D
cela dit, il duplique déjà les fichiers alors plutôt que ce soit user1 qui dépose les fichiers afin de les mettre à dispo de user2, il est tout ausi simple que ce soit user2 qui récupère les fichiers depuis l'emplacement appartenant à user1. Auquel cas, il lui suffit simplement d'y avoir accès en lecture.
Autrement dit, il s'agit simplement d'un problème de droit (cf. Qid).
Enfin, c'est se casser la tête pour pas grand chose


-- Lucid Lynx --

Hors ligne

#24 Le 01/03/2010, à 23:11

zaz

Re : [résolu] Chown sans droit 'sudo'

zaz a écrit :
nesthib a écrit :

un exemple de script :

DOSSIER_SURVEILLE='/mon/dossier'
UTILISATEUR='utilisateur'
inotifywait -m -r --format '%w%f' -e create -e moved_to "${DOSSIER_SURVEILLE}" | while read LINE
do
    chown ${UTILISATEUR}:${UTILISATEUR} "${LINE}"
done

à lancer en root

Woooo !!! Ca a l'air super joli ça, merci bien !!!! J'essaye ce soir (pasque la, sous windows, je vais avoir du mal hmm )

Donc je confirme, ça tourne impeccablement bien ! (juste fait un sudo apt-get install inotify-tools)
Ce qui est top en plus, c'est que je peux eventuellement déclencher une autre action (envoyer un mail a user2 par exemple pour lui dire qu'il y a un fichier pour lui).

Un grand merci a tous de votre aide.

Hors ligne

#25 Le 02/03/2010, à 00:19

nesthib

Re : [résolu] Chown sans droit 'sudo'

je t'en prie smile


GUL Bordeaux : GirollServices libres : TdCT.org
Hide in your shell, scripts & astuces :  applications dans un tunnelsmart wgettrouver des pdfinstall. auto de paquetssauvegarde auto♥ awk
  ⃛ɹǝsn xnuᴉꞁ uʍop-ǝpᴉsdn

Hors ligne