Page suivante Page précédente Table des matières

3. Sauvegardes temporaires

Question

Comment effectuer une « sauvegarde temporaire » destinée à permettre de restaurer rapidement des fichiers. Très utile lorsque l'on souhaite détruire des fichiers sans être absolument certain de ne pas devoir les restaurer dans les jours qui suivront tout en étant sûr de leur utilité nulle à plus long terme.

Réponse

Mise en place
Créer un répertoire « ~/tmp/Archive_tmp »

Placer le script de shell suivant sous « /usr/local/bin » :


#!/bin/sh
if [ ! -d ~/tmp/Archive_tmp ]; then
 echo Répertoire ~/tmp/Archive_tmp introuvable
 echo ECHEC de l\'archivage
 exit 4
fi

ArcName=$1

if [ x"$ArcName" = x ]; then
 pwd=`pwd`
 ArcName=`basename $pwd /`
fi

NAMETAR=~/tmp/Archive_tmp/"$ArcName"_`date +%y%m%d_%H%M%S`.tar
tar cf $NAMETAR *
nice gzip -5 $NAMETAR &
echo Archive temporaire : "$NAMETAR".gz

Installer, dans la crontab, un purgeur périodiquement invoqué :


35 20 1,7,13,20,26 * * find ~/tmp/Archive_tmp -type f -mtime +40 | xargs -r rm

Notes :

Utilisation Se placer dans le répertoire à sauvegarder puis invoquer « Archive_tmp » afin de le sauvegarder ou bien « Archive_tmp nom_de_fichier » pour ne mettre de côté qu'un seul fichier.

Pour restaurer : se rendre dans le répertoire « ~/tmp/Archive_tmp », déterminer quelle archive restaurer, se rendre dans le répertoire originel puis invoquer « tar xpvzf ~/tmp/Archive_tmp/nom_de_l'archive »

Ne pas négliger l'option 'p'.

On peut aussi employer la fonction bash (merci à M. Quercia) del () { mv -f -b -V numbered $* ~/trash }


Page suivante Page précédente Table des matières