On 12. 09. 18 17:23, Frederic Dumas wrote:
...

sudo find /repertoire_plein_de_sous-repertoires/ -type d -exec chmod ug+s {} \;


C’est l’option -type d de la commande find qui ne transmet à chmod que les 
seuls répertoires, et évite ainsi que l’option -s de chmod ne tague aussi les 
fichiers qu’ils contiennent.


Evidemment, je ne fais ici que recycler ce que j’ai trouvé sur la toile, pour 
répondre à mes propres besoins. Ce mail n’a pour but que de servir de 
pense-bête pour plus tard, à moi et à tous ceux qui se retrouvent parfois 
devant des arborescences où les droits sont retournés un jour à l’état sauvage.


Dés le début de ton mail j'ai vu que tu allais tomber sur un os en n'utilisant que le mode -R de chmod :-)

'find' est donc ton ami dans plein de cas et permet un filtrage assez pointu. C'est le cas si tu veux restreindre les changements à un certain groupe ou utilisateur, taille, date de modification, etc (Voir donc toutes les options de filtrage de 'find'). Perso, je trouve que 'chmod -R' est assez dangereux et peut avoir des conséquences assez pénibles si tu trompes et que tu l'appliques sur une grosse arborescence.

Aussi, on va me taxer de 'vieux', mais j'ai toujours trouvé que des notations du style 'ugo+...' de chown étaient cryptique. Naturellement, ça se corse avec les setuid, sticky bits et setgid. Je préfère donc, de loin, la notation classique en mode octal qui a le mérite d'être, à mes yeux, bien plus lisible est sans ambiguïté. A savoir, pour avoir du rwx pour le propriétaire, du rx pour le groupe, rien pour other et un setuid, cela se définit comme :

chmod 4750 <...>    -> -rwsr-x---

Avec cette notation, on ne peut pas 'ajouter' ou 'supprimer' une valeur, mais on la définit entièrement.

dc

        

_______________________________________________
gull mailing list
[email protected]
http://forum.linux-gull.ch/mailman/listinfo/gull

Répondre à