Forum Linux.général Vérifier l'intégrité des sauvegardes

Posté par  (site web personnel) . Licence CC By‑SA.
Étiquettes :
3
28
jan.
2019

Bonsoir,

je me pose cette question depuis un moment mais je n'arrive pas à trouver de réponse satisfaisante :
Comment être sûr que ce qu'on a sauvegardé est restaurable à l'identique ? Parce que les sauvegardes c'est comme les bouteilles de gaz, ça tombe en panne quand on en a besoin !

Il me semble avoir vu passer quelque chose ici (dépêche ou journal) mais impossible de mettre la main dessus. Et j'ai posé la question sur Reddit, mais tout ce qu'on me propose c'est restaurer ailleurs et vérifier/comparer avec l'existant. Mais ça ne me satisfait pas, c'est lourd et long.

Du coup vous faites comment pour vérifier vos sauvegardes, parce que vous le faites, hein ?

  • # quoi d'autres

    Posté par  . Évalué à 3.

    tout ce qu'on me propose c'est restaurer ailleurs et vérifier/comparer avec l'existant. Mais ça ne me satisfait pas, c'est lourd et long.

    si c'est juste une sauvegarde d'un dossier contenant des documents,
    un md5 de ces fichiers/dossiers devraient suffire, mais c'est valable à un instant T

    si c'est un systeme, une application, il faut verifier qu'elle tourne, qu'elle a bien toujours accès à la base de donnée, etc

    et donc toi justement tu imagines quoi qui soit plus simple, plus rapide pour verifier que l'integralité de ta machine soit restauré comme il se doit.

    • [^] # Re: quoi d'autres

      Posté par  (site web personnel) . Évalué à 1. Dernière modification le 28 janvier 2019 à 21:44.

      Non je n'imagine rien, c'est pour ça que je pose la question.

      Une somme de contrôle est effectivement une bonne idée, merci, puisqu'il s'agit dans mon cas que de fichiers et dossiers.

      « Il vaut mieux mobiliser son intelligence sur des conneries que mobiliser sa connerie sur des choses intelligentes. »

      • [^] # Re: quoi d'autres

        Posté par  (site web personnel) . Évalué à 4. Dernière modification le 28 janvier 2019 à 23:08.

        T'as regardé https://backupchecker.readthedocs.io/en/latest/ ?

        Being a sysadmin is easy. As easy as riding a bicycle. Except the bicycle is on fire, you’re on fire and you’re in Hell.

        • [^] # Re: quoi d'autres

          Posté par  (site web personnel) . Évalué à 1.

          Je crois que c'est ça que j'avais vu passer par ici, je vais jeter mes yeux.
          Merci.

          « Il vaut mieux mobiliser son intelligence sur des conneries que mobiliser sa connerie sur des choses intelligentes. »

      • [^] # Re: quoi d'autres

        Posté par  . Évalué à 4.

        personnellement pour éviter les corruptions silencieuses sur des disques durs de sauvegarde à froid, j'utilise rhash en mode création de liste qu'il place à la racine du dossier ou de la partition.
        Je créé la liste depuis le support de donnée d'origine puis je l'ajoute au disque de sauvegarde pour faire la vérification.

        C'est un peu long quand t'as un gros paquet de données mais ça permet un archivage pérenne même sur des disques douteux comme des WD Green ou Blue qui ont une gestion désastreuse des secteurs corrompus.

        • [^] # Re: quoi d'autres

          Posté par  . Évalué à 5.

          C'est un peu long quand t'as un gros paquet de données mais ça permet un archivage pérenne même sur des disques douteux

          Après faut toujours rapporter le temps passé à la valeur des données. En effet, il y a des donées uniques (par exemple photos/vidéos personnelles qui sont des captures d'instants de vie qu'on ne pourra jamais reproduire, ou films/musiques rares) et dans ce cas il est "rentable" de passer du temps à sauvegarder/contrôler ses données.

          Par contre il y a certaines données (je pense notamment aux films, musiques, mais il y en a d'autres) que l'on pourra retrouver même si on les perds: dans ce cas, c'est surtout le temps et l'argent consacré à retrouver ces données qui déterminera la façon dont on va les sauvegarder, le temps et les moyens qu'on va y mettre, etc …

          Par exemple, je n'accorde pas la même valeur à mes photos/vidéos de famille et à ma liste de films/séries. Ma liste de filsm/séries, je la sauvegarde parce que je n'ai pas envie de passer de temps/argent à la reconstituer, mais au final si je les perds, ce sera moinbs grave pour moi que mes photos de famille, donc je n'y mets pas les mêmes moyens.

          • [^] # Re: quoi d'autres

            Posté par  . Évalué à 5.

            c'est encore plus vrai en entreprise,

            j'ai un client un fois, lors d'une erreur humaine sur une VM avec snapshot
            (suppression du snapshot par le gestionnaire de fichier plutot que par l'interface)

            qui voulait envoyer la baie de stockage en desaster recovery pour recuperer le fichier excel qu'il avait mis la journée à remplir…

            juste parce que la VM n'avait plus le fichier, mais fonctionnait parfaitement.

            heureusement le directeur technique a mis le hola en disant qu'on n'allait pas immobiliser tout le monde pendant des semaines et depenser des milliers d'euros en disaster recovery pour retrouver le fichier snapshot manquant de la VM, pour retrouver finalement qu'un fichier qui coute une journée de travail humain.

          • [^] # Re: quoi d'autres

            Posté par  . Évalué à 2.

            Ce qui ralenti fortement le processus ce sont les petits fichiers car un disque dur est mauvais en accès aléatoires et en latence (encore pire avec un disque à faible vitesse de rotation).

            Il peut ainsi être judicieux de faire des archives tar (voire avec une compression) pour des dossiers composés de petits fichiers (photos, savestates, etc.), de faire des mux mkv de vidéos avec leur fichier srt et de temps en temps refaire une écriture complète de données pour défragmenter.

            Aussi avec un processeur pas trop faible, je pense qu'il est plus intéressant de lancer une instance pour chaque disque de sauvegarde. Même chose qu'avec les tests SMART.
            Après, je n'ai pas testé quel était l'algorithme de chiffrement le moins long mais je doute que pour un tel usage il soit nécessaire d'utiliser autre chose que CRC32 ou SHA1. ÀMHA MD5 est déjà overkill.

            Enfin, pour de l'archivage de données qui ne seront jamais réécrites, il peut être intéressant de faire des sauvegardes sur DVD inscriptibles (CD+-R aussi mais ils vieillissent beaucoup moins bien) et de réutiliser de vieilles clés USB. Là aussi créer préalablement une liste avec rhash et la graver sur le support permet ensuite de vérifier facilement l'intégrité de la sauvegarde.

  • # Ça dépend !

    Posté par  (site web personnel) . Évalué à 3.

    À ma connaissance, il n'y a pas de solution miracle, ça dépendra de l'application d'origine.

    Tu peux avoir les md5 (sha1/sha256/…) des fichiers d'origine et comparer avec ceux de la sauvegarde (mais attention : si ton fichier d'origine est corrompu, la sauvegarde le sera aussi).
    Si c'est une application avec une base de données de taille raisonnable, tu peux créer une machine virtuelle avec Vagrant, installer l'application, charger la sauvegarde et regarder la date des dernières modifications.
    Si ce sont des fichiers, tu peux créer un fichier "date" avant la sauvegarde et vérifier s'il est bien restauré.
    Si ce sont des fichiers avec une structure particulière (XML, par exemple), tu peux vérifier si les XML sauvegardés sont toujours valides.

  • # …c'est comme les bouteilles de gaz, ça tombe en panne quand on en a besoin !…

    Posté par  . Évalué à 2.

    Pour la bouteille de gaz, il te faut la poser sur un "pèse personne" (environ 10€)

    Pose une bouteille de gaz vide sur le pèse personne et mets à zéro le pèse personne.

    Quand ta bouteille pleine se videra alors qu'elle est posée sur le pèse personne,
    il te suffira de lire le poids de gaz restant pour prévoir de la changer avant la panne.

Suivre le flux des commentaires

Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.