Établissez vos droits
17 Apr. 2005
- Auteur : ssssseb
- Responsable : ssssseb
- Score ( voter ) :



- Connexes : Même auteur | Même responsable | Historique
# find . -user root -exec chown votre_user:votre_user {} \;
Ceci aura pour effet de trouver tous les fichiers qui descendent de votre home appartenant à l'utilisateur root et de vous en identifier le propriétaire grâce à chown.
$ find . -type d -exec chmod 700 {} \;
Pour rechercher tous les répertoire et leur appliquer un chmod de 700 (tous les droits pour le propriétaire, aucun pour les autres sauf root).
find . -type f -exec chmod 600 {} \;
Exactement le même but que la commande précédente, à l'exception près qu'il s'agisse ici de tous les fichiers avec un chmod de 600 (droits de lecture et d'écriture seulement pour le propriétaire excepté root).
find . -type f -name "*.sh" -exec chmod 700 {} \;
Trouve tous les fichiers dont l'extension est .sh et leur attribue tous les droits pour le propriétaire.
Dans ces exemples, "." équivaut au répertoire courant, "{}" représente toutes les réponses renvoyées au shell et "\;" permet de terminer la commande ;).
Ainsi, il sera possible de toujours conserver ses droits aisément, en ajoutant par exemple ces commandes dans un fichier exécutable qui se situera soit dans /etc/cron.daily, /etc/cron.hourly, /etc/cron.monthly ou encore /etc/cron.weekly. Il vous suffira d'indiquer vos commandes dans un fichier de cette syntaxe :
#!/bin/sh
# Commentaire que vous pouvez ajouter, précédé d'un dièse
# Les commandes que vous voulez exécuter, par exemple :
find /home/bozo -type d -exec echo {} > /home/bozo/le_clown \;
date >> /home/bozo/le_clown
cal >> /home/bozo/le_clown
# On peut mettre sur une ligne, bien sûr :
date >> /home/bozo/le_clown ; cal >> /home/bozo/le_clown
L'essentiel étant de ne pas oublier de remplacer "find ." par le bon répertoire!
En espérant que ça pourra vous être d'une quelconque utilité :)