Ajouter un système de sauvegarde automatique sur son serveur

sauvegarde serveur

Dans ce tutoriel vidéo (sommaire des tutos ici), nous allons voir comment ajouter un système de sauvegarde automatique (autrement dit Backup) sur notre serveur dédié. Backup-manager est logiciel en ligne de commande qui permet de sauvegarder le contenu de certains dossiers quotidiennement, sous forme d’archives. Il est également capable d’envoyer…

31 commentaires ont été ajoutés, ajoutez le vôtre.

Vous pouvez laisser un commentaire, cependant je ne peux pas vous garantir qu'il sera modéré rapidement ou qu'il aura une réponse, faute de temps pour m'occuper du site.

  1. dotMastaz

    Eh bien encore merci pour le tuto.
    Pour backup-manager, il me crée bien les fichiers dans /var/archives, mais but sur le ftp et créé cette erreur :
    Can’t use an undefined value as a symbol reference at /usr/share/perl/5.10/Net/FTP/dataconn.pm line 54.

    D’après d’autre forum, l’erreur viendrait de :
    export BM_UPLOAD_FTP_PASSIVE= »true »
    qui ne serait pas bien sur true, alors dans ma config, passive est à true ???

  2. zicguy

    Avec quoi peut on cloner un serveur ? Est-il possible de le faire automatiquement et à chaud ?
    Rsync et la virtualisation sont pour le moment exclus dans mon cas.

    • Madrzejewski Alexis

      Malheureusement je n’ai pas de nom de logiciel en tête, n’ayant pas encore besoin de cette méthode. On doit pouvoir le faire avec « tar » mais il faut être un peu bourrin. Il doit y avoir quelques solutions avec la commande « dd » également pour copier un disque bit à bit en passant par un liveCD par exemple. Je ne pense pas qu’on puisse le faire à chaud, ça poserai sans doute des conflits avec des fichiers ouverts et utilisés par des processus. Par contre, avec la virtualisation c’est possible (mais exclu je l’ai bien compris).

      • zicguy

        Ok. Merci pour toutes ces infos Alexis et encore bravo pour ton site 🙂
        A bientot;

  3. Zicguy

    Bonjour Alexis,
    Cette méthode de backup fonctionne plutôt bien, merci.
    Par contre à quoi sert de sauvegarder le /etc ? En cas de panne serveur, comment faire pour restaurer le système sans avoir à tout réinstaller ?

    Merci d’avance.

    • Madrzejewski Alexis

      Bonjour Zicguy,

      Effectivement, on ne peux pas remettre le /etc qui à été sauvegardé sur un nouveau serveur en cas de problème, mais je le sauvegarde pour récupérer les fichiers de configuration. Quand ça fait 1 an qu’on a pas touché au conf du serveur, ça fait du bien de récupérer les conf sauvegardés pour s’inspirer, on gagne du temps au moins.

      • Zicguy

        Oui effectivement, ca permet de gagner un peu de temps.
        Tu connaitrais pas un moyen de restaurer un serveur rapidement en cas de problèmes ? La contrainte est la même que dans ton tuto, c’est à dire de passer par un FTP distant (donc sans rsync ou ssh notamment).

      • Madrzejewski Alexis

        On doit pouvoir faire des choses intéressantes avec Rsync mais je n’ai pas vraiment regardé.

        Pour rétablir un serveur rapidement, on peut le cloner une fois qu’il est près et opérationnel + un clone de temps en temps.

        Sinon, je me pencherais plus vers des solutions de virtualisations qui propose ce genre de chose, migration à chaud, haute disponibilité, clone de serveur.

  4. lekiend

    Bonjour,
    Merci pour tous vos tutos qui sont très intéressant.
    Y aurait-il moyen d’envoyer les fichiers de backup vers Amazon S3 ?
    Merci pour votre avis.
    Dimitri

    • Madrzejewski Alexis

      Bonjour,

      Oui, c’est possible, dans le fichier de configuration de backupmanager, il y a des lignes concernant amazon S3. Après je ne peux pas vous en dire davantage puisque je n’ai jamais testé. Je pense qu’il existe des tutoriels de toute manière « backupmanager amazon s3 » dans google vous renseignera.

  5. GergE

    Petite remarque, si vous réalisez les sauvegardes de vos bases MySQL par les fichiers en mode Tarball, vous aurez des problèmes de données intègres.
    Il faut utiliser absolument la méthode mysql qui réalise un Dump des bases ce qui donne :

    BM_ARCHIVE_METHOD= »tarball mysql »

    Renseignez également les infos présentent à la partie mysql dans le fichier
    /etc/backup-manager.conf

    Ainsi vous sauvegardez vos dossiers de fichier (avec tarball) et vos bases de données (avec mysql) de façon correcte.

    Pour des raisons de sécurité, il vous faudra créer au préalable un utilisateur spécifique à mysql ayant des droits de lecture et de « lock tables »
    Attention, éviter de mettre le symbole $ dans votre mot de passe, sinon cela ne fonctionnera pas.

    • Madrzejewski Alexis

      Bonjour GergE,

      Merci pour cette précision, très utile en effet, que j’ai découvert il n’y a pas si longtemps justement ! A l’époque du tournage du tutoriel, je n’avais pas vu cette option (pourtant très clairement indiqué dans le fichier de conf en commentaire).

      Par contre, un grand merci pour l’astuce de l’utilisateur spécifique, notamment avec le lock tables, je n’y avais absolument pas pensé !

    • dotMastaz

      Très intéressant, mais incomplet des certains noobs comme moi, tu pourrais argumenter ?
      Merci bcp !

      • Madrzejewski Alexis

        Bonjour dotMastaz,

        Alors pour activer l’option de sauvegarde SQL, il faut juste modifier cette ligne comme ça : BM_ARCHIVE_METHOD= »tarball mysql ». En gros ajouter qu’on veut une backup SQL propre.

        Pour le « lock table », c’est un droit pour les utilisateurs dans SQL. Ça leur permet de verrouiller les tables pendant qu’ils travaillent dessus pour éviter des conflits (genre un autre utilisateur qui vient insérer des données). Dans le cas d’une sauvegarde c’est important, car si au même instant que l’on exporte les données, un autre utilisateur en insère, ça met un peu le bazar (dans le meilleur des cas, les nouvelles données ne sont pas sauvegardés, dans le pire ça plante tout).
        On doit pouvoir activer ce droit quand on créé un utilisateur dans phpmymadin.
        Pour le symbole $ c’est tout simplement parce que le shell l’interprète (comme une variable, qui n’existera pas pour le coup).

  6. omaze

    salut..

    Ca à l’air de marcher pour moi, mais j’ai l’erreur suivante :
    monvps :/etc/cron.daily# backup-manager
    Erreur rapport?e par backup-manager-upload pour la m?thode ??ftp??, voir ??/tmp/bmu-log.DlrCCf??.

  7. Simon

    Bonjour,

    Rsnapshot pourrait être intéressant et/ou complémentaire pour du backup de données.

  8. Mjlayak

    J’ai un soucis l’hors du lancement de Backup-Manager :

    La méthode de téléchargement « Ftp » n’est pas supportée ; ignoré.

    De plus dans les fichiers pour la langue la UTP-8 est mise mais j’ai encore les caractères incorrecte.

    Merci de m’aider dans c’est problème.

    • Mjlayak

      Aprés avoir corrigé l’autre bug, qui etait le F majuscule de ftp j’en est un nouveau.
      aprés s’etre connecté sur le FTP , et aprés avoir fait ls, sa reste bloqué sur :
      200 PORT command succesful
      Impossible aprés d’ecrire normalement avec le ftp>

  9. Tnoy

    Bonjour,
    Merci pour ce super tuto et bien-sur pour les précédents.
    Les archices sont bien crées mais j’ai un petit problème de transfert par FTP sur ma Dedibox.
    Le problème vient de ma config iptables car quand je remet à 0 Iptables ca marche.
    Par rapport à ton tuto :
    J’ai reconfig proftpf sur les ports passif : 60000:65535
    et ajouter 2 lignes :
    # Allow Passive FTP Connections
    iptables -t filter -A INPUT -p tcp –sport 60000:65535 –dport 60000:65535 -m state –state ESTABLISHED -j ACCEPT

    iptables -t filter -A OUTPUT -p tcp –sport 60000:65535 –dport 60000:65535 -m state –state ESTABLISHED,RELATED -j ACCEPT
    echo « ftp ok »

    Mais toujours le même problème.
    Si vous avez des pistes je suis preneur

    • frans2526

      J’ai trouvé, il suffit de créé une règle en plus dans les iptables dans #FTP In

      iptables -t filter -A INPUT -p tcp –dport 1024:65535 -s ADRESSE_IP_SERVEUR_BACKUP -j ACCEPT

      Ce qui se traduit par ouvre les ports 1024->65535 pour l’adresse du serveur de backup, même si on perd un peu de sécurité il y a peux de chance que quelqu’un puisse hacker le serveur de backup d’OVH et prendre le contrôle de l’ip.

      Merci encore pour le tuto 🙂

    • dotMastaz

      Pour ma part, j’ai juste décommenté la ligne:
      PassivePorts 49152 65534
      Et ça fonctionne !!

  10. Rétrolien: Installation et configuration d’un serveur dédié | Tutoriels-Video