Speak English? Click here to read my English blog!

Une manière sure et simple de sauvegarder son système GNU/Linux

Posté par jbj le 28 oct 2007 dans GNU/Linux18 commentaires

Je viens de mettre à jour ma distribution Xubuntu vers la version 7.10, Gutsy Gibbon. Avant toute chose, j'ai voulu mettre mes données à l'abri en cas de problème.
Voici une manière sure et simple pour créer une image disque que vous pourrez restaurer si par malheur un problème arrivait à votre système.

Suite à des tests effectués par burningHat, il semblerait que cette méthode peut poser des problèmes de fiabilité, notamment avec les gros volumes de données. Testez à vos risques et périls!

Il existe moultes manières de créer une image de sauvegarde sous Linux. Notons par exemple la présence d'utilitaire spécialisés, comme Ghost for Linux ou l'excellent Partimage.
Toutefois, il est possible de créer simplement, et sans rien installer, une archive de votre système via la commande tar.
Les avantages sont assez nombreux:

  • Comme je le disais plus haut, rien à installer.
  • Vous pouvez continuer à travailler pendant que tar travaille en arrière-plan.
  • La procédure est simple: Une commande pour créer l'archive, une autre pour la restaurer.
  • Pas besoin d'utiliser un live CD
  • Pas besoin de démonter les partitions que l'on veut sauvegarder.

Passons de suite à la pratique: Il nous faut tout d'abord nous placer à la racine du disque et devenir root:
cd /
sudo su

Puis executer la commande suivante, qui se chargera de créer l'archive:
tar cvpzf backup.tgz --exclude=/proc --exclude=/lost+found --exclude=/backup.tgz --exclude=/mnt --exclude=/sys /
Il s'agit simplement de créer une archive au format tgz, qui comprendra l'integralité de votre système, à l'exception des répertoires spécifiés dans le paramètre exclude.
En effet, il n'est pas necessaire de sauvegarder les répertoires lost+found, proc, sys, ou encore les disques amovibles (répertoire mnt). De même, faites attention à ne pas inclure le fichier lui même.

Quelques (dizaines de) minutes plus tard, votre sauvegarde backup.tgz trônera fièrement à la racine du disque. Il ne vous reste plus qu'à la mettre à l'abri pour une éventuelle utilisation ultérieure, par exemple sur un CD/DVD, ou encore sur une autre partition.

Restauration du backup

La commande suivante restaurera vos données telles qu'elles étaient lorsque vous avez créé la sauvegarde. Attention, en restaurant le backup, tous vos fichiers actuels seront remplacés par ceux contenus dans la sauvegarde.
tar xvpfz backup.tgz -C /

Tags: ,

18 commentaires

» Flux RSS des commentaires
  1. Pratiqe en effet…je suis plutot un maniaque de la sauvegarde mais partimage est assez chiant à utiliser car la machine est inutilisable pendant ce temps. Ce technique me permet de tuer le temps sur le net en attendant la fin de mon backup, ça fait un bout que je cherchais qqchose du genre!merci!

  2. [...] chose à faire: Une sauvegarde. ça prends une petite demi-heure et ça peut éviter beaucoup de tracas éventuels par la [...]

  3. Salut ! tu as testé cette méthode avec succès ? pas de soucis pour les liens symboliques ? j’ai peur que ça ait quelques effets de bord, voir que le système ne boot plus du tout…
    concernant partimage, c’est quand même un outil libre très simple et surtout très efficace.
    je commence à avoir une certaine expériences des processus de sauvegarde en raison de mon boulot et je m’intéresse pas mal à ce genre d’articles.

    a+

  4. Salut Cédric, je n’ai testé personellement que la création du backup, pas la restauration, du moins pour le moment car je n’en ai pas eu besoin.
    Dans le sens ou tous les fichiers sont copiés dans le backup, lorsque tu le restore, logiquement tu devrais retrouver ton système tel qu’il était avant. Le seul problème pourrait venir de fichiers créés entre la création du backup et sa restoration, je pense. Dans ce cas, peut-être faudrait-il, avant de restaurer, formatter le disque ou simplement supprimmer les répertoires qui vont être restaurés?
    Dommage que je n’ai pas un vieux laptop qui traine, j’aurais bien été tenté de tester ça « grandeur nature » ce week-end.

  5. Tout pareil que jbj, j’ai pas eu bsoin de me servir de la sauvegarde pour le moment

  6. Juste 2 petites remarques suite à mes tests personnels (sur une machine de test évidemment) ET à vos commentaires :

    1. cette méthode est sûre et simple pour un volume de données plutôt restreint (si je fais un backup système seul, ça marche nickel… si j’englobe les quelques 120Go de données de mon /home (et que je laisse tourner toute la nuit), je n’ai eu que des archives corrompues (et on ne remarque qu’au bout d’un loooooong moment en plus :p

    2. faire confiance à un « backup » (et par voie de conséquence à sa méthode), la publier en l’assurant simple sans avoir jamais tester la restauration, c’est purement et simplement suicidaire ! une méthodologie de backup ne peut être considérée comme fiable si on peut simuler la restauration/restaurer ses données de manière fiable ! Car la finalité d’un backup c’est d’être restauré après crash, pas de « décorer » votre librairie de médias ;)

    Une méthode certe simple donc, mais à fiabilité réduite d’après mes tests incluants une phase de restauration post-crash ;)

  7. Personnellement j’utilise dump / restore :

    dump -0ua -f – /home | gzip > home.dump.gz

    et pour restaurer (parce que ce n’est pas tout de sauvegarder ..)

    gunzip -c home.dump.gz | restore -rf -

    Maintes et maintes fois testé pour réorganiser mes disques durs, ne pose aucun problème avec les liens symboliques et fichiers spéciaux. La taille du fichier dump ne prend en compte que la taille occupée sur disque et pas la taille de la partition elle-même.

  8. Merci JP pour ton tuyau, je vais me documenter sur ce sujet :)

  9. Bonjour et merci ,

    Cela fait bientot une semaine que je cherchais a sauvegarder ma configuation de Xubuntu et ce sujet est un petit miracle …

    Je viens de tester a l’instant la commande et elle a marcher nikel !!! par contree je voudrait savoir comme faire pour restaurer le systeme sauvegarder si il est enregistrer sur un DVD ??? quel commande dois-je utiliser ?

    Merci d’avance de la reponse

    Arkhh

  10. Salut,
    Pour restaurer un dump qui se trouve sur un support amovible, il te suffit d’en indiquer le chemin:
    Par exemple au lieu de: tar xvpfz backup.tgz -C /
    ça donnerais: tar xvpfz /media/cdrom/backup.tgz -C /

    Toutefois, il y a eu quelques mauvais retours d’utilisateurs sur cette commande, aussi je te mets en garde quand à son utilisation.

  11. Salut,

    Merci de ta reponse …. Si j’ai bien compris il suffit juste de changer le chemin d’accès donc ca va pas trop dure … Par contre quels problemes y a t’il eu avec cette commande ?

    En tous cas elle marche vachement bien cette commande c’est super !!!! merci encore

    Arkhh

  12. BurningHat à effectué des tests qui n’ont pas toujours été concluants, particulièrement avec des gros volumes de données. (120 Go) C’est pour cette raison que j’ai décidé d’apposer un bandeau d’avertissement en haut de l’article.

  13. ok

    personellement j’ai pas se probleme mon disque dure fait 12 Go ( c’est un très vieux PC ^^)

    Par contre je suis pas sur que cette commande est tous bien restaurer car j’avais une icone de recherche qui aparaissait dans la zone de notification et elle apparait plus …. (c’est pas grave car je cherchais a l’enlever mais je prefere quand meme le signaler ) ….

  14. Il me semble qu’il serait honnete de changer le titre et d’enlever le mot « sure ».
    proposer une methode de sauvegarde et ne pas la tester soi meme est quand meme inconscient.
    surtout quand on la qualifie de « sure ».

  15. J’ai découvert depuis peu rsync. Pas nouveau mais excellent !

    Je sauvegarde tout mon système (sauf /mnt /dev /proc etc.) sur un disque externe usb.
    La première sauvegarde prend un peu de temps, mais c’est une sauvegarde différentielle: on ne sauvegarde ensuite que les fichiers qui ont été créés/changés. Donc tout sauvegarder (environ 60Go) prend moins de 10mn.

    Restauration dans un fauteuil: un rsync dans l’autre sens, depuis un live cd par exemple si on est tout planté.

    En mode archive « rsync -a » garde les liens symboliques, les droits utilisateurs etc.

    De la doc sur rsync un peu partout…

    Une réflexion en passant: quand on a un bon système de sauvegarde on devient moins prudent, donc attention!

    Bruno

  16. Salut Bruno, en effet j’ai entendu parler (en bien!) de rsync. Il y à même un programme nommé Flyback, qui émule le TimeMachine d’Apple en s’appuyant sur rsync. Je l’ai téléchargé mais pas (encore?) testé. ça m’a l’air pas mal du tout.

  17. Je ne connais pas Time Machine ni Apple, mais:

    Une simple ligne de commande pour sauvegarder:
    rsync -av [repertoire à sauvegarder] [chemin du périphérique de sauvegarde]
    et comme je disais, pour restaurer, dans l’autre sens.

    Options que j’utilise:
    –exclude [les sous-dossiers que je ne veux pas sauvegarder]
    –delete: supprime dans la sauvegarde les fichiers effacés dans le système depuis la dernière sauvegarde, sinon on alourdit inutilement.
    Pas de ces options dans la restauration évidemment.

    Disons que j’ai détruit ma partition Linux en faisant une c.rie grosse comme moi.
    Je recrée/formate ma partition.
    Je restaure /home sur cette parition neuve avec rsync.
    Je réinstalle ma distribution (pour moi Mepis 6.0) avec option garder /home. Le CD d’installation me demande de créer un compte root (ce que je fais) et au moins un utilisateur. Là je crée un utilisateur bidon (je l’appelle bidon, mot de passe bidon). Il va vouloir créer un répertoire /bidon dans /home, pas grave.
    Depuis un live-cd je supprime carrément les répertoires /usr /etc /root /boot /bin … enfin tous les répertoires utiles du système que je viens d’installer. Sauf /home (‘videmment) /dev /tmp /mnt /sys etc…
    Je les remplace par les anciens répertoires que j’avais sauvegardés.
    Peut-être quelques petits problèmes et messages d’erreur, mais en gros mon système est redevenu comme avant.

    Voilà.

    Bruno

  18. @jbj: +1 pour la petite bannière d’avertissement ! ;)

Commenter