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
- –user: fichiers apparteenat à tel User
- –group: 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 :
ls -lhR /home/tux
- find /home/tux -type f | xargs chmod 660
- find /home/tux -type d | xargs chmod 770
- find /home/tux -type d -exec chmod 770 {} \;
———————————————————————————————————-
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 (des BLOCKS),
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)
CPIO préserve par défaut les droits et les chemins !
- P : (p majuscule) préserve le chemin dans la sauvegarde
- p : préserve les droits
- c : Create
- x : eXtract
- v = mode verbeux (optionnel)
- f = indique le Fchier d’archive
- z : compresse avec gZip
- j : compression bzip => plus performant mais plus long
Exemples :
- tar Pcfzp /tmp/archive.log.tar.gz /var/log
- tar cf home.tar /home/ => crée une archive tar
- tar tf home.tar => liste le contenu de l’archive
- tar rf home.tar tux.jpeg => ajoute le fichier tux.jpeg à l’archive
- gzip -c home.tar > /tmp/home.tar.gz => compresse le fichier tar
- gzip -c home2.tar >> /tmp/home.tar.gz => compresse le fichier tar
- gunzip décompresse le fichier zippé
gunzip -c home.tar.gz > archive.tar
Les backStits permettent d’éxécuter la commande dans une autre commande …
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
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