Synology Synology : réassigner les permissions sur un dossier partagé via planification / script

Oyeee

Nouveau membre
30 Juillet 2019
11
0
0
Bonjour, est-ce qu'une âme charitable pourrait donner l'astuce pour savoir quoi mettre comme script / code dans une tâche planifiée sur un NAS Synology pour assigner de nouveau les droits de lecture / écriture à l'utilisateur "BOB" pour "MONDOSSIER" après que rsync ait fait sauter les permissions (synchro du dossier partagé entre 2 NAS toujours affectée par ce bug jamais corrigé de nos jours) ? Genre est-ce que ce lien aide en une quelconque façon (comment le saurais-je, le code fourni sur la dite page est du chinois pour moi, mais la logique de passer par l'interface du Synology et non par Putty et compagnie est idéale pour moi) ? Merci !!! Votre contribution permettra de finaliser un tutoriel à destination de tous les novices qui n'y connaissent rien à Linux comme moi... :)


Edit : et voilà le tuto ;)
 
Hello,

Voilà une demande qui n'est pas commune. Si je comprends bien, tu fais un rsync entre 2 NAS... mais les permissions sautent ! C'est étonnant ça, ça perd tout de suite de l'intérêt.

Quoiqu'il en soit, si tu ne peux pas faire autrement... je pense que c'est possible avec une ligne de commande :
Code:
chown -R BOB /volume1/TEST/MONDOSSIER
Là, BOB devient le propriétaire du dossier MONDOSSIER et tous les sous-dossiers de celui-ci. En tant que propriétaire, BOB peut donc tout faire. Si tu ne souhaites pas qu'il soit propriétaire des sous-dossiers, alors ne met pas le -R (récursif). Note : Dans mon exemple, il faut que BOB soit autorisé à accéder au dossier TEST ;)
Si en plus de BOB, tu souhaites remettre les droits d'un groupe d'utilisateurs GROUPE (en plus de BOB) :
Code:
chown -R BOB:GROUPE /volume1/TEST/MONDOSSIER

Ensuite, il va falloir créer une tâche automatique. Connecte-toi à l'interface d'administration du NAS (si ce n'est pas déjà fait). Va dans le Panneau de configuration > Planificateur de tâches. Là tu va cliquer en haut à gauche sur Créer > Tâche planifiée > Script défini par l'utilisateur comme l'image ci-dessous :
script-utilisateur.jpg

Une boîte de dialogue va s'ouvrir. Donne un nom à la tâche, laisse bien l'utilisateur sur root et la case Activé cochée
retour-bob.jpg

Ensuite, va sur l'onglet Programmer et défini quand tu souhaites exécuter la commande pour que BOB ait les pleins pouvoirs sur MONDOSSIER (dans mon exemple, tous les jours à 00:05)
planifier.jpg

Déplace-toi sur l'onglet Paramètre de la tâche et copie/colle notre petite commande ci-dessus dans la zone Script défini par l'utilisateur et clique sur le bouton OK.
param.jpg

Je te l'ai fait rapide, mais tu peux demander à recevoir un mail lorsque la tâche est finalisée. Pour terminer, tu as 2 choix :
  • tu attends que le script passe tout seul à l'heure programmée
  • tu exécutes le script immédiatement
Pour le second choix, tu restes sur le Planificateur de tâche... tu sélectionnes la tâche nouvellement créée et tu cliques sur le bouton Exécuter. Il ne reste plus qu'à regarder via File Station si BOB est bien maintenant le propriétaire du dossier MONDOSSIER.

Voilà... la commande chmod aurait peut-être été plus adaptée, mais dis-moi si cela te convient ;)
 
Whaoo, un grand merci, pour la compréhension vis à vis de mon ignorance, la pédagogie et la réponse concrète ! C'est vraiment sympas.

Alors oui à priori ça semble parfait et radical.

Du coup, maintenant que je comprends que chmod peut permettre à plusieurs utilisateurs d'accéder en écriture à un dossier, est ce que tu pourrais indiquer la ligne de commande qui permette, après un chown pour rendre à nouveau propriétaire BOB (car oui rsync fait bêtement tout sauter et remet 'admin' exclusivement comme proprio et seul utilisateur à pouvoir lire et écrire le dossier, même si le dit compte est désactivé..), de faire aussi un chmod pour, en plus de BOB, permettre aussi à l'utilisateur MAX d'accéder en lecture et écriture sur le dossier ? Merci beaucoup encore pour tout ! :-D
 
Si MAX fait partie du groupe GROUPE alors il est déjà associé avec la commande
Code:
chown -R BOB:GROUPE /volume1/TEST/MONDOSSIER

:-D
 
Merci ça devient de plus en plus limpide pour moi :-D !

Du coup petite question subsidiaire pour comprendre jusqu'au bout : comment le Syno fait en arrière plan lorsqu'on utilise les cases à cocher de l'interface du DSM comme ci-dessous ? Il fait du CHOWN & GROUP (mais alors il invente un groupe sans nous le dire ?) ou bien du CHMOD ?

permissions.jpg

Si c'est du CHMOD qu'il fait (à priori ?) il fait quoi comme commande équivalente à la capture ci-dessus, ça :-? ?

Code:
chmod u-r-w-x admin
chmod u+r+w+x BOB
chmod u+r+w+x MAX
chmod o-r-w-x

#o pour tous les autres si existants

Si j'ai bien compris, au final on ferait alors du chmod si on a qu'un utilisateur à affecter, ou du chown & group pour gagner du temps dès qu'il y a plusieurs utilisateurs ? :) Et si on aime pas les groupes et qu'on veut faire son maniaque, on ferait alors une ligne de chmod par utilisateur, comme ci-dessus, dans la zone "Script défini par l'utilisateur" (génial, merci, car je pensais qu'on ne pouvait mettre là que des chemins à des fichiers .sh), c'est ça ? ;)
 
si je comprend bien, tu as un dossier sur un pc ou un nas2 que tu synchronise sur le nas1 et tu veut travailler sur le nas1 en direct ?

peut être que la méthode employé n'est pas la bonne car je ne voie pas l'intérêt à chaque fois de changer les permissions (car la synchro doit se refaire sur la totalité au lieu sur la nouveauté).

Pour ma part, j'ai un windows pro, ce qui me permet d'utiliser active diretory (permet entre autre une synchro entre pc et nas des dossiers documents, photo, video et images), mais c'est possible aussi de le faire manuellement en déplacent les dossiers documnets, photo, vidéo et images sur le nas avec cette procédure :

http://www.chantal11.com/2009/05/deplacer-mes-documents-ou-tout-dossier-personnel-sur-autre-partition-windows-7-8-10/

Puis pour les avoir en permanence sur un pc par exemple portable (en cas de déplacement), en activant la fonction synchronisation hors ligne de windows voir cette procédure

https://cri.centrale-marseille.fr/fr/faq/utiliser-fichiers-hors-connexion-avec-windows-7

ceci permet de mettre tout les docs sur le nas et d'avoir l'impression de travailler avec le nas même quand il n'est pas connecté au nas (la synchro se fera une dois branché dessus), mais il me semble que c'est pour les windows pro, à vérifier.

La question, as tu windows pro, c'est la seul méthode que je connaisse ou c'est transparent en laissant les droit d"acces sur le nas
 
Hello, en fait ça ne pose pas de problème d'utiliser la fonction Synchro du dossier partagé, c'est même fait pour ça :cool: Il suffit d'utiliser l'option "synchronisation sur modification" :p
 
édit : Mais pour utiliser tout le potentiel des droits de windows, il faudra formater en ntfs, d'ou je pense que l'idéal est de passer par LUN

https://www.synology.com/fr-fr/knowledgebase/DSM/tutorial/Virtualization/How_to_use_the_iSCSI_Target_service_on_Synology_NAS

le disque sera sur le nas mais windows croira qu'il est sur le pc (donc on formate depuis windows)
 
Oyeee a dit:
Hello, en fait ça ne pose pas de problème d'utiliser la fonction Synchro du dossier partagé, c'est même fait pour ça :cool: Il suffit d'utiliser l'option "synchronisation sur modification" :p



c'est une question ou une affirmation ?

de te toute façon, la synchro se fait que sur les fichiers modifier ou nouveau pour économiser la bande passante
 
Oui en effet, je ne sais pas si c'est précisément ça Active Directory, mais avec Windows (PRO ou pas) on peut travailler directement sur le NAS 1 via l'explorateur (il faut juste éviter les gros fichiers, genre PST pour Outlook en POP...). Il suffit pour ça d'avoir sur le NAS un utilisateur avec les mêmes identifiant + mot de passe que sur le PC, et de l'autoriser dans le DSM à accéder au dossier concerné (pas besoin de passer par ACL ou je ne sais quoi, tout est intuitif ainsi pour les novices) :) On peut alors aller directement depuis Windows dans le dossier via l'URL de type \\monnas\mondossier ou faire un lecteur virtuel "connecter un lecteur réseau" (histoire d'accéder plus facilement depuis les logiciels comme Word) :idea: Aucun formatage particulier requis.

NB : je précise aux adeptes des bases ACCESS, que ça ne pose aucun souci de travailler directement dessus et ce, avec des utilisateurs simultanés (l'assistance Synology m'avait même confirmé officiellement le support de cette méthode lorsque j'en avais eu besoin)

NB bis : de mémoire ça utilise SMB, et parfois il faut s'assurer de la version activée sur le NAS
 
je n'avait pas compris, ta demande était entre deux nas :oops:

sinon, je rectifie, pas besoin d'avoir le même identifiant (il peut enregistrer un identifiant réseau)

et que je sache pas de restriction en utilisant un LUN par exemple
 
Bon, j'ai enfin testé avec le planificateur de tâches, mais snif avec ce code ça fait juste tout sauter et plus personne n'a de droits sur le dossier (juste admin qui est passé en droit personnalisé)...

Code:
chmod u+rw BOB /volume1/MONDOSSIER

:(

NB : message d'erreur renvoyé par email : chmod: cannot access 'BOB': No such file or directory o_O il est con ou bien ?

Tout le monde parle sur le web du propriétaire et du reste du monde, mais j'en reviens à ma question : quelle commande fait le Syno lorsque je coche des cases dans l'interface pour interdire admin, autoriser BOB, autoriser MAX :?: Quand je saurais ça, j'imagine que je serai en mesure de mettre la même commande dans le planificateur :oops:

Est-ce que c'est le fameux others qu'il faut utiliser ?

Code:
chmod o+rw BOB /volume1/MONDOSSIER

:-?
 
Bon, à force de chercher sur le web, je trouve ça :

Code:
setfacl -R -m u:username:rwx myfolder

Ce serait ça la solution ? Sauf que ça me renvoie : setfacl: command not found

Comment le Syno est-il capable de mettre des droits différents sur un même dossier et ne pas connaître ACL ? Sachant que le dossier concerné est déjà en ACL vu que le DSM est en version 6 (et le volume en ext4)...

Et puis le sujet pour nous ce n'est pas de gérer les droits des utilisateurs accédant via l'explorateur Windows (même si on l'a évoqué ) mais juste les droits des utilisateurs du Synology pour que rsync ne soit pas bloqué à la synchronisation suivante... :-? Est-ce que rsync / synchro du dossier partagé uilise ACL en fait (les fameuses cases à cocher que j'évoque depuis le début) ? Pourtant quand on fait une synchro et que le NAS crèe automatiquement le dossier cible, il n'active pas les autorisations de partage avancés... :rolleyes:

Au secours FX Cachem :-D
 
j'y connait rien mais

VI - L'avantage du CHown
Pour éviter des chmod 666 (ou pire encore des 777), CHown permet de modifier le propriétaire d'un fichier.

Par exemple, si vous souhaitez vous réaproprier les droits sur l'ensemble d'un dossier et que vous êtes l'utilisateur "martin", lancez dans la console :

https://www.leshirondellesdunet.com/chmod-et-chown
 
FX Cachem a dit:
Code:
chown -R BOB /volume1/MONDOSSIER

:-D

Bon désolé FX Cachem, mais lorsque je planifie un chown, l'action s’exécute bien et ne retourne pas d'erreur (d'après l'email reçu), sauf qu'il ne se passe rien, le propriétaire n'est pas changé sur le dossier... via DSM on peut toujours voir BOB décoché partout, alors qu'il devrait avoir sa case Lecture/Écriture cochée, suite à l'exécution du script...

Cela dit, si je fais un
Code:
ls -l /volume1
alors je vois :

Code:
d---------+  4 BOB          root                4096 Aug  2 15:27 MONDOSSIER

J'imagine que donc la commande est bien prise en compte, sauf que dans l'interface du DSM, onglet permissions, aucune case n'est cochée...

Soit dit en passant, à force d'y passer la journée, j'ai appris que quand il y a un + ça signifie qu'un setfacl a été utilisé (alors que comme dit plus haute, le syno me dit qu'il ne connait pas la commande) alors que pour cet ultime test j'ai supprimé le dossier et l'ai recréé, sans lancer de commande setfacl dessus...

NB : j'ai testé aussi le code suivant :

Code:
chown -R BOB /volume1/MONDOSSIER
chmod -R 755 /volume1/MONDOSSIER

...et cette fois-ci un ls me renvoie :

Code:
drwxr-xr-x   4 BOB           root                4096 Aug  2 15:27 MONDOSSIER

...mais toujours aucune case cochée dans les permissions via DSM, ça fait même sauter celles qu'on aurait ajouté manuellement...


chown_must_go_on.jpg


:( :?:
 
au faire, pour la synchro antre deux nas (moi, je n'ai pas essayé), as tu regardé du coté du package "synology frive ShareSync" ?
 
Eh oui, ce qui est fait en ligne de commande ne remonte pas forcément dans l'interface... c'est une des limites ;)

Mais le principal n'est-il pas que cela fonctionne tout simplement ? ;)
 
FX Cachem a dit:
Eh oui, ce qui est fait en ligne de commande ne remonte pas forcément dans l'interface... c'est une des limites ;)

Mais le principal n'est-il pas que cela fonctionne tout simplement ? ;)

Oui c'est vrai, mais c'est frustrant :-D Alors j'ai fini par trouver la solution propre qui fait ça dans les règles de l'art :idea: Voir le tuto pour découvrir le code qui va bien ;)

Encore merci, sans ton soutien je n'aurais pas eu la motivation et les clés pour écumer le web et trouver une issue à ce problème :p

Et merci à Invité de m'avoir tenu compagnie :)