Aller au contenu

QuentinR

Membres
  • Compteur de contenus

    3
  • Inscription

  • Dernière visite

À propos de QuentinR

Visiteurs récents du profil

Le bloc de visiteurs récents est désactivé et il n’est pas visible pour les autres utilisateurs.

QuentinR's Achievements

Newbie

Newbie (1/14)

  • First Post Rare
  • Conversation Starter Rare

Recent Badges

0

Réputation sur la communauté

  1. Bonjour, Je suis un vrai newbie, donc je ne sais pas vraiment comment voir où se situe le problème. Ce que je sais c'est que le script tourne et occupe pas mal les ressources du NAS (au point que certains process de backup, aussi configurés dans task scheduler, ne sont pas effectués), mais au final rien ne se produit. Après trois jours, aucun résultat... Je dois peut-être juste préciser que le NAS a une capacité totale de 190 To. Donc le script devrait agir plus ou moins lorsque le remplissage atteint 171 To. Est-ce le fait que ce soit un gros chiffre, et du coup ça prend énormément de temps? Mais alors chaque fois que le script sera lancé, cela prendra toujours énormément de temps et cela empêchera d'autres scripts d'être processés....? Thx
  2. Bonjour à tous, J'utilise un NAS synology pour du pur backup de mon infrastructure (plusieurs autres NAS avec divers "shared folders"). Pour effectuer ces backups journaliers en mode block-level, j'utilise des scripts Rsync configurés dans task scheduler. Jusque là tout va bien. Mais je voudrais que le volume1 de ce NAS de backup se purge automatiquement en effaçant les plus vieux folders dans chacun de ses shared folders (de destination des backups, donc) lorsque le quota atteint/dépasse 90% d'occupation. J'ai créé une nouvelle task juste pour ça, mais ça ne semble pas fonctionner. Quelqu'un sait-il me dire ce qui coince ici? Voici le script en question : #!/bin/bash # ----------------------------------------------------------------------------- # DELETE older folders à 90% d'occupation du serveur # ----------------------------------------------------------------------------- # Set variables BACKUP_DIR="/volume1" # Path to the backup directory THRESHOLD=90 # Disk usage percentage threshold (90%) REMOVE_AMOUNT=10 # The number of oldest directories to delete at a time # Get current disk usage percentage for the volume where BACKUP_DIR is located USAGE=$(df "$BACKUP_DIR" | awk 'NR==2 {print $5}' | sed 's/%//') # Check if disk usage exceeds the threshold if [ "$USAGE" -ge "$THRESHOLD" ]; then echo "Disk usage is at $USAGE%, exceeding the $THRESHOLD% threshold." # Find the oldest directories/files in the backup folder and delete them while [ "$USAGE" -ge "$THRESHOLD" ]; do # Find and delete the oldest directories/files OLDEST_FILES=$(find "$BACKUP_DIR" -mindepth 2 -maxdepth 2 -type d ! -path "$BACKUP_DIR/mnt*" ! -path "$BACKUP_DIR/home*" ! -path "$BACKUP_DIR/homes*" -exec stat -c "%Y %n" {} \; | sort -n | awk '{print $2}' | head -n $REMOVE_AMOUNT) # Delete the oldest files if [ -n "$OLDEST_FILES" ]; then echo "Deleting oldest directories: $OLDEST_FILES" echo "$OLDEST_FILES" | xargs rm -rf else echo "No more directories to delete." break fi # Update disk usage after deletion USAGE=$(df "$BACKUP_DIR" | awk 'NR==2 {print $5}' | sed 's/%//') done else echo "Disk usage is at $USAGE%, below the $THRESHOLD% threshold." fi
×
×
  • Créer...

Information importante

Nous avons placé des cookies sur votre appareil pour aider à améliorer ce site. Vous pouvez choisir d’ajuster vos paramètres de cookie, sinon nous supposerons que vous êtes d’accord pour continuer.