sauvegardegeneralepc_v2.tar.gz
Version : 1.0 du 5 juin 2010
Version : 2.0 du 12 juin 2010
Mes sauvegardes concernes les données, pas une “image disque totale” pour réaliser ensuite une ré-installation totale du PC.
Lorsque j'ai décidé de sauvegarder régulièrement les données de mes PC, je me suis trouvé face à un problème de volume de donnée. Même mon disque dur du 500 Go aurait été rapidement plein si je me contentais de “tout copier”. Il a fallut que je réfléchisse et que je fasse des choix. Voici mes choix.
Certaines données ne sont pas importante pour moi, évoluent très peu dans le temps et je peu les retrouver si nécessaire. Il s'agit des films (pas mes vidéos personnelles), des musiques, des images de CD/DVD (format iso). J'ai donc décidé de stocker ces données dans un disque dur USB spécifique, sur lequel j'effectue des sauvegardes très irrégulièrement. Je réalise alors une simple copie sur le disque dur USB.
Les données importantes sont sauvegarder très régulièrement avec le script décrit ici. Elle sont donc sauvegarder en visant la pérennité de celles-ci. Mais attention, comme les répertoires contenant les données importantes sont souvent au milieu d'autres répertoires, utilisés par les applications, il faut passer un peu de temps à analyser l'occupation du disque PC avec un logiciel (type xdiskusage sur Linux) afin de choisir quels répertoires système ou d'application sont à exclure.
Réalise la sauvegarde des répertoires et partitions sélectionnés d'un PC, sur un disque dure USB externe, d'une façon entièrement automatique. Sauvegarde totale, pas incrémentale.
Crée des archives (non compressés) en découpant celle-ci en fichiers de 2 Go maximum chacun, avec l'application 'dar' http://dar.linux.free.fr/ , http://fr.wikipedia.org/wiki/DAR (en français).
Vérifie que l'espace libre sur le disque du PC permet la création des fichiers de 2 Go.
Vérifie que le disque dure USB externe dispose de suffisamment d'espace libre pour la sauvegarde totale.
Crée un répertoire de sauvegarde daté, sur le disque USB.
Calcul un checksum sha1, http://fr.wikipedia.org/wiki/SHA-1, pour chaque fichier d'archive.
Copie les fichiers archives et les checksum de fichiers sur le disque USB.
Vérifie le checksum des fichiers une fois ceux-ci sur le disque USB (copie non corrompue).
Supprime les fichiers d'archive du PC une fois réalisé la vérification.
Effectue toutes ces opérations sur chaque fichier d'archive de 2 Go, au fur et à mesure, puis efface celui-ci du PC avant de créer le suivant. Pour réduire l'espace disque nécessaire sur le PC au fonctionnent du script.
Crée un fichier des checksum de l'ensemble d'une archive pour une vérification manuelle total, si nécessaire.
Crée un fichier de Log, équivalent à l'affichage sur la console, et copie celui-ci sur le disque USB.
Copie les fichiers du script sur le disque USB.
Desarchivage des sauvegardes globales ou fichier individuel avec l'application 'DarGUI' pour Linux, http://sourceforge.net/projects/dargui/.
Il est possible d'utiliser 'dar' en ligne de commande mais je ne vois pas l'intérêt.
sh SauvegardeGeneralePC.sh
' et faire Entrée.Au cours de la sauvegarde les fichiers d'archives sont créer dans le répertoire ou se trouve le script.
Les fichiers iso (images de CD/DVD) ne sont pas archivées car je considère que ces données sont toujours téléchargeables. Ces exclusions sont réglables.
La durée de sauvegarde est plus influencée par la puissance du processeur que le volume des données. Ceci en raison de la création des archives et des calculs des cheksum sha1. 65 Go de sauvegarde prennent 2h30 sur mon AMD Athlon64 et environ 7h00 sur mon NetBook MSI.
Utiliser de préférence un éditeur de fichier type Gedit ou Kate. La coloration syntaxique de ces éditeurs facilitera les réglages.
Vérifier que les requis ci-dessous sont respectés.
Copier ce fichier et son sous-programme 'SauvegardeGeneralePc_SousProgr1.sh dans un répertoire du PC avec au moins 5 Go d'espace disque libre.
Attention, le répertoire dans lequel est placé le script n'est pas sauvegardé, ne pas placer de données dans ce répertoire.
Modifier l'arborescence de destination vers le disque USB externe. Voir '»»> REGLAGE INITIAL 1 ««<' dans le code. Cette arborescence doit correspondre à celle existante jusqu'au répertoire de destination sur le disque USB. Elle n'est pas crée par le script.
Régler les partitions et répertoires à sauvegarder dans la fonction 'Partitions et répertoires de sauvegarde'. Voir '»»> REGLAGE INITIAL 2 ««<' dans le code.
Régler éventuellement les types de fichiers qui seront excluent. Voir '»»> REGLAGE INITIAL 3 ««<' dans le code ci-dessous.
Lancer le script jusqu'à la vérification de l'espaces disques disponibles et nécessaires. Ceci permet de vérifier l'arborescence des répertoires à sauvegarder.
Voici l'arborescence que j'utilise personnellement
SAUVEGARDE (nom du disque dure USB) | --- AmdAthlon64 (un de mes PC) | --- Portable_1 (un de mes PC) | --- PowerNet (un de mes PC) | --- Netbook_MSI (le PC de ce script) <<<<< REGLAGE INITIAL 1 | --- Sauvg_2010-05-01 (création automatique) | --- Sauvg_2010-05-15 (création automatique) | --- Sauvg_2010-06-01 (création automatique) | --- Mandriva (partition Linux) <<<<< REGLAGE INITIAL 2 | | | --- papa (mon /home) <<<<< REGLAGE INITIAL 2 | | | --- thunderbird (mes courriels) <<<<< REGLAGE INITIAL 2 | --- WindowsXP (partition Windows) <<<<< REGLAGE INITIAL 2 | | | --- Bureau (le bureau) <<<<< REGLAGE INITIAL 2 | | | --- MesDocuments (mes documents) <<<<< REGLAGE INITIAL 2 | --- Disque (partition de partage Linux/Windows) <<<<< REGLAGE INITIAL 2
Pourquoi cette arborescence ?
Ceci me permet
Régler la fonction 'Partitions et répertoires de sauvegarde pour test sur une clef USB' avec un répertoire de destination vers une clef USB.
Taper la commande ' sh SauvegardeGeneralePC.sh test
'. Le mot 'test' est ajouté.
Création d'archives au lieu de sauvegardes directes des fichiers :
Calcul de checksum 'sha1':
Pourquoi ne pas compresser les archives ? :
… malgré les nombreux logiciels de sauvegarde existants ?
C'est principalement le calcul d'un checksum réalisé automatiquement sur chaque archive que je n'ai pas trouvé. Ce checksum me donne un moyen de vérifier que les archives ne sont pas corrompues dans le temps en raison d'une dégradation du support (disque dure ou autre) ou lors d'un transfert de fichier.
Accessoirement l'application 'dar' permettant de déclencher des commandes entre chaque fichiers d'une archive (limité à 2 Go dans mon cas), permet de faire beaucoup de choses.
Et enfin bien sur, le faite de réalise un script me permet de tout automatiser. Une fois les scripts de chaque PC et le disque dure USB réglés, je ne réfléchis plus au moment de faire la sauvegarde. Je lance le script et je part faire autre chose. Il y a tellement de vérification dans le script que je suis tranquille. Exemple : le script vérifie que l'espace disque USB peut recevoir la sauvegarde avant de faire quoi que se soit. Aucun risque d'un message du type “disque plein” après 3 heures.
Ah, j'avais oublié : l'application graphique DarGui, à toujours bien fonctionné pour dés-archiver une archive complète de 15 Go décomposé en de multiples fichiers ou bien un unique fichier de cette archive. Je ne peut pas en dire autant des applications d'archivages basés sur 'tar', qui sont en standard sur les distributions Linux. DarGui permet aussi de créer les archives 'dar' bien entendue.
Pour une prochaine version :