N'hésitez pas à me le signaler si nécessaire via le formulaire de contact.
Une fois votre serveur installé, il est indispensable de mettre en place une procédure de sauvegarde pour ne pas perdre vos données.
L’offre Kimsufi ne comprenant pas d’espace de backup, je vais détailler comment sauvegarder les données sur un espace ftp.
( Dans mon cas j’utilise une offre mutualisé perso d’ovh, qui comprends 100 go d’espace ce qui est largement suffisant )
Installation de backup-manager
Pour réaliser les sauvegardes je vais utiliser backup-manager, qui permets de sauvegarder les contenus des dossiers de votre choix, mais également le contenu de vos bases de données.
Pour commencer installer backup-manager
sudo apt-get install backup-manager |
L’installation vous demande ensuite dans quel dossier seront générées les sauvegardes.
Par défaut « var/archives/ »
Si l’espace disque de votre serveur vous le permets conserver cet emplacement, sinon indiquez un emplacement sur une partition avec suffisamment de place
Préciser ensuite les dossiers que vous souhaitez sauvegarder
Pour ma part j’ai sauvegardé les fichiers de configuration système ( /etc/ ), les contenus des utilisateurs ( /home/) et les bases mysql ( /var/lib/mysql/ )
L’installation de backup-manager est terminée, nous allons à présent configurer l’export de ces sauvegardes vers un ftp distant
Configuration des sauvegardes
Entrer la commande
sudo vim /etc/backup-manager.conf |
Il va falloir adapter la configuration de backup manager pour la faire correspondre à vos besoins.
La durée de conservation des sauvegardes est configurable via la ligne suivante
export BM_ARCHIVE_TTL="7"> |
La durée par défaut est de 5 jours, pour plus de sécurité je vais la passer à 7
Le format des fichiers par défaut est .tar, mais les options suivantes sont également disponibles : tarball-incremental, mysql, pgsql, svn, pipe
export BM_TARBALL_FILETYPE="tar mysql" |
Rajouter « mysql » pour sauvegarder également les bases mysql.
Plusieurs solutions sont disponibles pour sauvegarder les bases mysql soit __ALL__ , pour toutes les sauvegarder, ou entrer le nom des bases à sauvegarder
#bases mysql export BM_MYSQL_DATABASES="__ALL__" |
Désactiver également la sauvegarde via une gravure de cd
export BM_BURNING_METHOD="none" |
Les modes de sauvegarde et leur fréquences sont déterminés, il faut à présent renseigner les informations de connexion à mysql et au serveur ftp
### Accès Mysql #Utilisateur mysql pour les sauvegardes export BM_MYSQL_ADMINLOGIN="root" # Mot de passe export BM_MYSQL_ADMINPASS="pass" # hote de la base de données export BM_MYSQL_HOST="localhost" ### Accès ftp #On choisi le mode d'upload ftp export BM_UPLOAD_METHOD="ftp" # utilisateur ftp export BM_UPLOAD_FTP_USER="myuser" # mot de passe ftp export BM_UPLOAD_FTP_PASSWORD="mypassword" #hôte ftp export BM_UPLOAD_FTP_HOSTS="ftp.mywebsite.com" # Chemin de depose des fichiers export BM_UPLOAD_FTP_DESTINATION="/backup/" |
Sauvegarder votre fichier, la configuration est à présent terminée.
Il est possible de lancer la sauvegarde manuellement via la commande
sudo backup-manager |
Pour terminer nous allons ajouter la sauvegarde aux taches cron quotidiennes via la commande suivante
sudo vim /ect/cron.daily/backup-manager |
Copier le contenu suivant dans le fichier
#!/bin/sh /usr/sbin/backup-manager |
Pour finir donner les droits d’éxécution à ce fichier
sudo chmod 751 /etc/cron.daily/backup-manager |
La sauvegarde est à présent bien en place, et elle sera réalisée chaque jour.
Edit 2015-10-15 :
Si vous souhaitez exclure des fichiers de la sauvegarde vous pouvez consulter l’article suivant :
Backup manager : Exclure des fichiers ou des dossiers