#1 Le 01/06/2014, à 15:45
- Crone123
Paramètres: Tous les dossiers sauf ...
Bonjour,
Comment faire, sur les commandes de base, genre cp, mv, chmod, chown ou setfacl (surtout pour ce dernier) pour dire:
Appliquer récursivement quelque chose sur le dossier Test
Mais ignorer les dossiers Test/Dossier1 et Test/Dossier2/Dossier3
En gros, je veux gagner du temps en appliquant par exemple des droits sur un dossier et son contenu, mais sans affecter certains dossiers qui sont dedans.
Merci
Hors ligne
#2 Le 01/06/2014, à 17:34
- pingouinux
Re : Paramètres: Tous les dossiers sauf ...
Bonjour,
Voici un exemple avec chmod. Il suffit d'enlever le echo si les commandes sont correctes.
find Test \( \( -path Test/Dossier1 -o -path Test/Dossier2/Dossier3 \) -prune \) -o -exec echo chmod g=rwX {} \;
Ce serait la même chose avec chown, et sans doute setfacl (que je n'utilise pas).
Pour cp et mv, c'est plus délicat (faut-il déplacer un répertoire contenant un répertoire à ne pas déplacer ?). Si tu veux déplacer tous les fichiers répondant aux critères (à l'exclusion des répertoires), vers le répertoire Destination (sans conserver l'arborescence) :
find Test \( \( -path Test/Dossier1 -o -path Test/Dossier2/Dossier3 \) -prune \) -o \( -type f -exec echo mv {} Destination \; \)
Hors ligne
#3 Le 01/06/2014, à 19:19
- Crone123
Re : Paramètres: Tous les dossiers sauf ...
OK, donc en fait on retrouve notre ami "find" que j'utilise déjà dans beaucoup de cas, donc je suppose que ce n'est pas possible sans...
Mais merci quand même pour les exemples ça pourra me servir
EDIT: Et pour setfacl c'est pour les ACL, c'est vachement pratique dès qu'il y a de nombreux utilisateurs qui partagent un même dossier.
D'ailleurs, j'ai beau avoir cherché, au niveau des droits utilisateurs, Linux est une vraie plaie. Autant c'est très précis et très fonctionnel, autant on a du mal a débloquer totalement les droits pour tout le monde pour un partage.
Si un gars extrait une archive ou créer des dossiers et sous dossiers tout ça, ou coupe des fichiers au lieu de les copier, quasiment a tous les coups ça restreint les droits pour les autres, même si j'ai tout fait dans mes réglages de droits pour que les droits des dossiers parents s'appliquent aux enfants.
Du coup, le seul truc fiable que j'ai trouvé, c'est une tâche cron qui se lance toutes les minutes en tant que root, et qui remet les droits comme je le voulais. C'est vraiment nul d'être résigné a faire ça pour avoir des droits qui sont vraiment conservés comme on veut, sinon on fini toujours par avoir un truc qui n'est pas accessible aux autres utilisateurs, et on fini toujours par être obligé de venir en tant que root pour débloquer le dossier....j'ai déjà cherché pour virer complètement les restrictions ou autres de dossiers/partition mais j'ai rien trouvé de mieux que ma tâche cron malheureusement...
Si quelqu'un a une solution fiable pour ces problèmes de restrictions de droits qui se mettent quasiment a chaque fois sur les dossiers partagés (comme expliqué plus haut) ça m’intéresse.
Parce que du coup, ma question de ne pas prendre un certain dossier c'était pour ma tâche cron, comme je n'ai pas de meilleure solution.
Merci
Dernière modification par Crone123 (Le 01/06/2014, à 19:25)
Hors ligne