Introduction
La commande tar permet de faire des backup en format compressé ou non et elle offre un nombre impressionnant d'options.
Nous allons ici résoudre des cas simples
Extraire une archive en omettant le nom du répertoire
Imaginons que vous ayez une archive au nom de archive.tgz
Lorsque vous faites un
tar zxvf archive.tgz
Si vous voyez apparaître un répertoire archive/fichier et que vous ayez à renommer le fichier archive en projet par exemple
Si vous ajoutez des fichiers dans projet et que vous voulez détarer une version suivante de l'archive contenant les fichiers ajoutés ?
Faire
tar zxvf archive.tgz -C projet --strip-components=1
Cette commande indique que le dépaquetage est à faire dans le répertoire projet et de ne pas retenir le premier nom qui est archive
La fois suivante quand vous détarez vore fichier tar
Merger deux répertoires
Cette astuce correspond au cas fréquent où l'on dispose de deux équipements qui dispose de deux répertoire à peu près identiques. Imaginons que sur un PC de bureau vous ayez vos fichiers client avec une arborescence du genre
Clients/Nom/PropositionCommerciale/Devis/
Clients/Nom/PropositionCommerciale/Factures/
...
Si vous disposez d'un portable comportant la même arborescence vous pouvez aisément faire un backup de chacune de vos arborescences sur chacun des équipements par la commande :
tar zcvf backup.tgz Clients
mais comment récupérer une archive contenant les versions les plus à jour, sachant que vous avez probablement modifié des fichiers sur votre PC de bureau et votre PC portable ?
Imaginons que vous ayez deux fichiers backup1.tgz et backup2.tgz, il existe deux méthodes :
Par l'option upgrade de la commande tar
tar zxvf backup1.tgz
gunzip backup2.tgz
tar uvf bakup2.tar Clients
rm -rf Clients
tar xvf backup2.tar
Par deux répertoires et une commande de copy
tar zxvf backup1.tgz
mv Clients Clients2
tar zxvf backup2.tgz
cp -urv Clients2 Clients1