Vous le savez sans aucun doute, mais un problème récurrent dans notre univers et d’avoir des sauvegardes de ses systèmes. Concernant les serveurs, un rsync bien configuré avec cron fait parfaitement le boulot (la sauvegarde des serveurs fera l’objet d’un prochain article). Mais il est parfois plus compliqué de le faire sur un ordinateur portable, car il n’est pas forcément branché sur un espace de stockage en permanence.
Voici un petit script pour Linux qui vous permettra de lancer une sauvegarde sur un disque dur externe. Il vous suffit de changer les paramètres suivants :
- DEST= – indiquer ici le chemin vers votre disque dur externe, vous devez normalement le voir apparaître dans /media/ quand vous le branchez.
- HOST= »laptop » – indique le nom du dossier des sauvegardes, si vous le laissez comme cela, le nom sera sous la forme « laptop+date »
- vous pouvez empêcher des dossiers d’être transférés avec rsync via l’option –exclude, comme vos dossiers de musiques et de films (comme vous pouvez le voir dans l’exemple), n’hésitez surtout pas à ajouter ce que vous voulez.
#!/bin/sh # Paramètres du backup : # Vers quel disque dur DEST=/media/octobackup/ # Nombre de jours au-delà duquel on supprime les anciens backups DAYS=300 # Nom de votre ordinateur (pratique si vous en avez plusieurs) HOST="laptop" RSYNC_OPTIONS="-P -H" if [ ! -d "$DEST" ] then echo "Disque de sauvegarde non monté !" exit 1 fi # On backup dans un dossier <host>_<date> NOW="${HOST}_`date +%Y%m%d`" LINKDEST="" for i in `ls -rt $DEST|tail -3` do if [ "$i" != "$NOW" ] then LINKDEST="$LINKDEST --link-dest $DEST/$i/" fi done mkdir "$DEST/$NOW" rsync / $DEST/$NOW/ -a --delete --numeric-ids --exclude "home/octopuce/Musique" --exclude "home/octopuce/Vidéos" --exclude "proc/*" --exclude "sys/*" --exclude "dev/*" --exclude "home/skhaen/.gvfs" --exclude "media/*" --exclude "/mnt/" $LINKDEST $RSYNC_OPTIONS touch "$DEST/$NOW" # Ensuite on fait du ménage : effacement des dossiers de plus de X jours echo "Cleanup ..." find "$DEST" -maxdepth 1 -mindepth 1 -type d -mtime +$DAYS -print -exec rm -rf {} \;
Si vous ne savez comment le mettre en place, vous pouvez faire ceci :
wget https://github.com/octopuce/octopuce-goodies/blob/master/octobackup/backup.sh mv backup.sh /usr/local/bin chmod +x /usr/local/bin/backup.sh
Modifiez le ensuite à l’aide de votre éditeur de fichiers favori. Le script pourra alors être lancé de n’importe où sur le système, ce que vous pourrez faire quand votre disque dur externe sera branché.
Note : tous les codes de nos scripts pour administrateurs système sont publiés sous licence CC0 dans un dépôt git public.
Avec du chiffrement
Par ailleurs, nous recommandons vivement de protéger votre disque de sauvegarde par une phrase de passe : en effet, vous ne voulez pas que n’importe qui puisse brancher ce disque sur un ordinateur et accède ainsi à toutes vos données personnelles !
Pour ce faire, nous utilisons, sur Debian / Ubuntu & autres Linux, l’utilitaire de disque, (accessible dans Applications puis Accessoires). Branchez votre disque USB, puis choisissez de créer une partition (ou formater la partition existante). Un panneau similaire à celui-là apparaîtra. Cochez la case « chiffrer le périphérique correspondant »
Ensuite, l’utilitaire vous demandera de saisir la phrase de passe du disque, qu’il ne faudra surtout pas oublier !
Ainsi, à chaque fois que vous brancherez ce disque, gnome vous demandera sa phrase de passe pour le déverrouiller. Vos sauvegarde seront au chaud et en sûreté !