Comparateur de dossiers
Compare deux exports de droits/propriétaires de dossiers (script export-rights.sh fourni) pour identifier les différences entre un serveur source et un serveur destination : entrées manquantes, propriétaires différents, droits différents.
Comment ça marche ?
- Télécharge le script d'export :
-
Sur le serveur SOURCE, copie le script et lance-le sur le dossier à analyser. Cela génère un fichier source.txt :
chmod +x export-rights.sh ./export-rights.sh /home/dossier1 > source.txt -
Sur le serveur DESTINATION, copie le script et lance-le sur le dossier à comparer. Cela génère un fichier destination.txt :
chmod +x export-rights.sh ./export-rights.sh /home/dossier1 > destination.txt - Récupère les deux fichiers (source.txt et destination.txt) et uploade-les dans les champs ci-dessous.
Voir le code source du script (transparence)
Le script est minimaliste : il liste les fichiers et dossiers à profondeur 1 avec leurs droits, sans rien envoyer ni modifier sur ton serveur.
#!/usr/bin/env bash
# export-rights.sh
# Usage : ./export-rights.sh /chemin/du/dossier > rapport.txt
set -eu
TARGET="${1:-}"
[[ -z "$TARGET" ]] && read -r -p "Dossier à analyser : " TARGET
[[ -d "$TARGET" ]] || { echo "Erreur : '$TARGET' invalide" >&2; exit 1; }
TARGET="$(cd "$TARGET" && pwd)"
echo "# GrosTony rights export v1"
echo "# folder: $TARGET"
echo "# host: $(hostname)"
echo "# date: $(date -Iseconds)"
echo "# format: type<TAB>name<TAB>owner<TAB>group<TAB>perms_octal<TAB>perms_symbolic"
find "$TARGET" -mindepth 1 -maxdepth 1 \
-printf '%y\t%f\t%u\t%g\t%m\t%M\n' | sort
Confidentialité
- Les fichiers que tu uploades sont supprimés du serveur immédiatement après le traitement (dans la même requête HTTP), sans aucune copie ni sauvegarde.
- Par défaut, rien n'est sauvegardé : le résultat de la comparaison est affiché à l'écran, puis disparaît dès que tu quittes la page.
- Tu n'es pas connecté : aucune sauvegarde n'est possible. Le résultat sera uniquement affiché à l'écran.
- Pour plus de détails sur la gestion des données, voir les conditions d'utilisation.