Les commandes de sauvegarde sous Linux – FIND – TAR – CPIO – RSYNC

I► Nous allons tout d’abord étudier la commande FIND et voir pourquoi nous la distinguerons de LOCATE

Liste des principales options de FIND :

  • Fichiers accédés :
  • amin : fichiers accédés depuis n minutes
  • atime : fichiers accédés depuis n jours(24 heures)
  • Fichiers modifiés :
  • mmin : fichiers modifiés depuis n minutes
  • mtime : fichiers modifiés depuis n jours(24 heures)
  • name : motif à rechercher (utilisable avec les méta-charactères * ? [] )
  • empty : fichiers vides
  • executable : fichiers X
  • readable : Fichiers en lecture (ACL pris en compte)
  • writable : fichiers accesibles en écritue (compat.ACL)
  • size : fichiers utilisant un espace disque ( b:blocs de 512o | k:kilo | M:Méga | G:Giga )
  • type : b:bloc | c:caracter | d:répertoire | f:fichier | l:lien | s:socket)
  • uid : fichiers apparteenat à tel User
  • gid : fichiers appartenant à tel groupe
  • -used : le dernier accès date de n jours après sa dernière date de modification
  • fstype : fichiers se trouvant sur tel FS (ext2-3-4-butrfs)
  • regex : motifs avec des regexpr
  • iregex : motifs avec des regexpr mais case insensitive
  • Actions de FIND
  • delete : efface les fichiers concernés
  • exec commande {} \; : éxécute une commande (méthode xargs {} et \ échappe le ;
  • -ok commande ; comme -exec mais pose une question
  • print : affiche le nom du fichier sur la sortie standard

Exemple :

  • find /tmp/ -name fic_tes -type f -print | xargs /bin/rm -f
  • find . -type f -exec fils {} \;

———————————————————————————————————-

 TAR ou CPIO :

———————————————————————————————————-

2 commandes qui permettent d’archiver de simples fichiers ou toute une arborescence.
Tar agit sur des fichiers,et cpio agit sur les entrées/sorties standard,
Tar ne conserve pas les droits ni les propriétaires des fichiers, alors que cpio le fait
(tar peut le faire avec l’option -p == preserve)

Capture

  • P : préserve le chemin dans la sauvegarde
  • c : Crée
  • v = mode verbeux
  • f = indique le fichier d’archive
  • z : compresse avec gzip ( j pour bzip )

Les backStits permettent d’éxécuter la commande dans une autre commande …

Capture

Exemples d’utisation de CPIO :

  • find /var/log/ -name *.log | cpio –create | gzip > archive.cpio.gz
  • find /var/log/ -name *log | cpio –create > archive2.cpio
  • Crée une archive …
  • gunzip -c archive.cpio.gz | cpio –list
  • cpio –list < archive2.cpio
  • Liste le contenu d’une archive
  • gunzip archive.cpio.gz | cpio –extract -vu
  • cpio –extract -vu < archive2.cpio
  • restaure toutes les données en écrasant le tout
  • gunzip archive.cpio.gz | cpio –extract -v
  • restaure les fichiers plus anciens que ceux dans l’archives

Capture

CPIO reçoit en entrée le résultat de recherche du find et redirige sa sortie vers un fichier d’archive (compressé ou pas ).

———————————————————————————————————-

 RSYNC :

———————————————————————————————————-

RSYNC permet de synchroniser 2 répertoires, sur la même machine ou par le biais du réseau ..
RSYNC permet entre autres de faire des sauvegardes incrémentielles.

Exemple : rsync -avr /home/tux/ /sauvegarde/
a : all (droits – propriétés )
v : verbeux
r : récursif

Cette commande va créer un répertoire tux dans le répertoire /sauvegarde

? Si l’on modifie ou rajoute un fichier dans l’arborescence de tux et que l’on rééxécute rsync, rsync ne copiera que les nouveaux fichiers et ceux qui ont été modifiés

?  Avec l’option –delete rsync supprimera les fichiers dans l’archive qui auraient été supprimés dans le répertoire de travail :

Exemple : rm /home/tux/job/dossierX ==> rsync -arv –delete /home/tux /sauvegarde
supprimera le fichier dossierx dans l’archive sauvegarde

?  Avec l’option –backup  rsync supprimera les fichiers dans l’archive pour les déplacer dans un répertoire indiqués par –backup-dir

Exemple : rm /home/tux/job/dossierX ==> rsync -arv –delete –backup –backup-dir=/Suppr /home/tux /sauvegarde

RSYNC en remote :

rsync -arv /home/tux root@192.168.10.1:/sauvegarde/ -e “ssh -p22”
ou
rsync -arv /home/tux root@192.168.10.1:/sauvegarde/ -e ssh
Sauvegarde sur le serveur 192.168.10.1 en utilisant le protocole SSH sur le port 22

Michel BOCCIOLESI