Contenu | Rechercher | Menus

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentes Révision précédente
Prochaine révision
Révision précédente
backuppc [Le 23/07/2014, 22:48]
82.254.132.67 [Version des dépôts]
backuppc [Le 04/08/2017, 16:48] (Version actuelle)
92.154.15.51 [Méthode avec sudo]
Ligne 1: Ligne 1:
-{{tag>Lucid  Oneiric Precise ​Trusty réseau serveur sécurité sauvegarde }}+{{tag>​Trusty ​Xenial ​réseau serveur sécurité sauvegarde }}
 ---- ----
 +{{ :​image:​backuppc-logo.gif?​80|}}
 ====== Serveur de sauvegarde automatique : BackupPC ====== ====== Serveur de sauvegarde automatique : BackupPC ======
-{{ :​image:​backuppc-logo.gif?​150 |}} 
 **BackupPC** est un logiciel libre de [[:​sauvegarde|sauvegardes]] de données informatiques,​ publié sous licence GPL.\\ **BackupPC** est un logiciel libre de [[:​sauvegarde|sauvegardes]] de données informatiques,​ publié sous licence GPL.\\
 Il permet d'​assurer une politique de sauvegardes "​versionnées"​ pour des clients de différents types (Unix, GNU/Linux, Windows, Mac) Il permet d'​assurer une politique de sauvegardes "​versionnées"​ pour des clients de différents types (Unix, GNU/Linux, Windows, Mac)
- 
-===== Présentation ====== 
  
 **BackupPC** est utilisé pour sauvegarder un ensemble de postes. Il possède une interface Web pour configurer, lancer des sauvegardes ou restaurer des fichiers. Il est également possible de sauvegarder des bases de données. **BackupPC** est utilisé pour sauvegarder un ensemble de postes. Il possède une interface Web pour configurer, lancer des sauvegardes ou restaurer des fichiers. Il est également possible de sauvegarder des bases de données.
Ligne 27: Ligne 24:
 Le logiciel se réveille toutes les heures pour sonder l'​ensemble des machines spécifiées dans le fichier **/​etc/​backuppc/​hosts**.\\ Le logiciel se réveille toutes les heures pour sonder l'​ensemble des machines spécifiées dans le fichier **/​etc/​backuppc/​hosts**.\\
 Puis, pour chaque poste allumé, il fonctionne ainsi : Puis, pour chaque poste allumé, il fonctionne ainsi :
-  * Interrogation de la période du Blackout: si l'​hôte est dans sa période d'​exctinction,​ le serveur passe à la machine suivante. Ce qui peut-être bien pratique pour des machines nomades.+  * Interrogation de la période du Blackout: si l'​hôte est dans sa période d'​exctinction,​ le serveur passe à la machine suivante. Ce qui peut être bien pratique pour des machines nomades.
   * Sinon, il étudie la machine hôte.   * Sinon, il étudie la machine hôte.
  
Ligne 38: Ligne 35:
  
 ===== Installation ===== ===== Installation =====
- 
-==== Version des dépôts ==== 
 Backuppc est [[http://​sourceforge.net/​apps/​mediawiki/​backuppc/​index.php?​title=Supporting_distros|supporté]] par un bon nombre de [[wpfr>​Linux#​Distributions|distributions linux]].\\ Backuppc est [[http://​sourceforge.net/​apps/​mediawiki/​backuppc/​index.php?​title=Supporting_distros|supporté]] par un bon nombre de [[wpfr>​Linux#​Distributions|distributions linux]].\\
 Étant disponible dans les [[:​dépôts]] de chaque [[:​versions|versions d'​Ubuntu]],​ il suffira d'​[[:​tutoriel:​comment_installer_un_paquet|installer le paquet]] **[[apt>​backuppc|backuppc]]** [[http://​packages.ubuntu.com/​search?​keywords=backuppc&​searchon=names&​suite=all&​section=all|correspondant]] sur votre serveur de sauvegarde, puis de vous laissez guider. Étant disponible dans les [[:​dépôts]] de chaque [[:​versions|versions d'​Ubuntu]],​ il suffira d'​[[:​tutoriel:​comment_installer_un_paquet|installer le paquet]] **[[apt>​backuppc|backuppc]]** [[http://​packages.ubuntu.com/​search?​keywords=backuppc&​searchon=names&​suite=all&​section=all|correspondant]] sur votre serveur de sauvegarde, puis de vous laissez guider.
Ligne 63: Ligne 58:
 <​code>​sudo adduser [MON_USER] backuppc</​code>​ <​code>​sudo adduser [MON_USER] backuppc</​code>​
  
-=== Ajout du fichier apache.conf ​:=== +=== Ajout du fichier apache.conf === 
-Ensuite, ​l'​installation ne copie pas le /​etc/​backuppc/​apache.conf sur le serveur apache2. Il faut exécuter la ligne de commande suivante pour copier ​le fichier dans le répertoire /​etc/​apache2/​conf-enabled/ : +Comme l'​installation ne copie pas le /​etc/​backuppc/​apache.conf sur le serveur apache2. Il faut le faire soit même en copiant ​le fichier dans le répertoire /​etc/​apache2/​conf-availableavant de rendre actif le site: 
-<​code>​sudo cp /etc/apache2/​apache.conf /​etc/​apache2/​conf-enabled/apache_backuppc.conf</​code>​ +  * Copie du fichier .conf dans /​etc/​apache2/​conf-available/​ 
 +<​code>​sudo cp /etc/backuppc/​apache.conf /​etc/​apache2/​conf-available/backuppc.conf</​code>​ 
 +  * Activation du site 
 +  sudo a2ensite backuppc.conf 
 +  ​
 <​note>​ <​note>​
-Le fichier a été renommé en apache_backuppc.conf, ce qui permettra par la suite d'​identifier ​le fichier de configuration de backuppc ​parmi d'autres fichiers.+Le fichier ​de configuration ​a été renommé en backuppc.conf, ce qui permet de l'​identifier ​plus facilement ​parmi les autres fichiers.
 </​note>​ </​note>​
- +  * Un redémarrage du serveur web est nécessaire pour prendre en compte les modifications.
-Un redémarrage du serveur web est nécessaire pour prendre en compte ​tous les modifications.+
 <​code>​sudo /​etc/​init.d/​apache2 restart</​code>​ <​code>​sudo /​etc/​init.d/​apache2 restart</​code>​
- 
- 
-==== Version des backports ==== 
-Vous pouvez choisir d'​installer une  version de backuppc plus récente depuis les [[:​depots#​backports|dépôts backports]]. 
  
 ===== Utilisation ===== ===== Utilisation =====
Ligne 128: Ligne 121:
   * stopper le [[:​services|service]] backuppc: <​code>​sudo service backuppc stop</​code>​   * stopper le [[:​services|service]] backuppc: <​code>​sudo service backuppc stop</​code>​
   * créer votre répertoire de destination au préalable: <​code>​sudo mkdir /<​le_chemin/​repertoire_destination>/​backuppc/</​code>​   * créer votre répertoire de destination au préalable: <​code>​sudo mkdir /<​le_chemin/​repertoire_destination>/​backuppc/</​code>​
-  * copiez-y ce qui se trouve dans **/​var/​lib/​backuppc**:<​code>​sudo rsync -va /​var/​lib/​backuppc /<​le_chemin/​repertoire_destination>/​backuppc</​code>​+  * copiez-y ce qui se trouve dans **/​var/​lib/​backuppc**:<​code>​sudo rsync -va /​var/​lib/​backuppc /<​le_chemin/​repertoire_destination>/</​code>​
   * assurer vous que les [[:droits]] sur les fichiers et répertoires sont les mêmes.   * assurer vous que les [[:droits]] sur les fichiers et répertoires sont les mêmes.
   * supprimer ou déplacer (au cas où) le répertoire **/​var/​lib/​backuppc**   * supprimer ou déplacer (au cas où) le répertoire **/​var/​lib/​backuppc**
Ligne 136: Ligne 129:
  
 ===== Configurer les sauvegardes ===== ===== Configurer les sauvegardes =====
-Vous trouverez dans cette sections ​les différents types de sauvegardes testés par les contributeurs. N'​hésitez pas à y ajouter votre méthode s'il n'y est pas déjà listé.+Vous trouverez dans cette section ​les différents types de sauvegardes testés par les contributeurs. N'​hésitez pas à y ajouter votre méthode s'il n'y est pas déjà listé.
   * [[#​Sauvegarder un répertoire local via tar]]   * [[#​Sauvegarder un répertoire local via tar]]
   * [[#​Sauvegarde du poste local sur un disque dur externe USB]]   * [[#​Sauvegarde du poste local sur un disque dur externe USB]]
Ligne 287: Ligne 280:
 En cas de blocage suite à la réinstallation du poste à sauvegarder,​ la partie traitant de la [[:​ssh#​Gestion_des_clés|gestion des clefs]] vous sera sûrement d'une grande aide. En cas de blocage suite à la réinstallation du poste à sauvegarder,​ la partie traitant de la [[:​ssh#​Gestion_des_clés|gestion des clefs]] vous sera sûrement d'une grande aide.
 </​note>​ </​note>​
 +<​note>​ 
 +Si l'​erreur ssh est "This account is currently not available.",​ sur le client, éditer /​etc/​passwd,​ et pour le compte "​backup"​ remplacer "/​usr/​sbin/​nologin"​ par "/​bin/​sh"​ (rencontré sur ubuntu 14.10) 
 +</​note>​
 === Paramétrer l'​usage de ce compte par backuppc === === Paramétrer l'​usage de ce compte par backuppc ===
  
 ==  Par l'​interface Web== ==  Par l'​interface Web==
 //onglet **Xfert** -> pour **rsync** -> chapitre **Chemins/​Commandes/​Args Rsync** // indiquer pour: //onglet **Xfert** -> pour **rsync** -> chapitre **Chemins/​Commandes/​Args Rsync** // indiquer pour:
-  * ** RsyncClientCmd ** <​file>​$sshPath -q -x -l backup ​$hostIP /​usr/​bin/​sudo ​$rsyncPath $argList+</​file>​ +  * ** RsyncClientCmd ** <​file>​$sshPath -q -x -l backuppc ​$host $rsyncPath $argList+</​file>​ 
-  * ** RsyncClientRestoreCmd ** <​file>​$sshPath -q -x -l backup ​$hostIP /​usr/​bin/​sudo ​$rsyncPath $argList+ </​file>​+  * ** RsyncClientRestoreCmd ** <​file>​$sshPath -q -x -l backuppc ​$host $rsyncPath $argList+</​file>​
  
 == Depuis le fichier « /​etc/​backuppc/​config.pl » == == Depuis le fichier « /​etc/​backuppc/​config.pl » ==
Ligne 388: Ligne 383:
 ==== Configuration du WOL sur le serveur ==== ==== Configuration du WOL sur le serveur ====
  
-L'​outil [[:etherwake|etherwake]] est parfait pour démarrer une machine à distance. Pour pouvoir utiliser ce dernier avec le nom de la machine au lieu de son adresse MAC, il faut compléter le fichier **/​etc/​ethers** :+L'​outil [[:wakeonlan|etherwake]] est parfait pour démarrer une machine à distance. Pour pouvoir utiliser ce dernier avec le nom de la machine au lieu de son adresse MAC, il faut compléter le fichier **/​etc/​ethers** :
 <​file>​ adresse:​MAC nom_machine </​file>​ <​file>​ adresse:​MAC nom_machine </​file>​
 Il va sans dire que le nom de la machine doit être déclaré comme dans le fichier ** /​etc/​backuppc/​hosts**. Il va sans dire que le nom de la machine doit être déclaré comme dans le fichier ** /​etc/​backuppc/​hosts**.
Ligne 525: Ligne 520:
 par par
 <​file>​$Conf{PingPath} = '/​bin/​echo';</​file>​ <​file>​$Conf{PingPath} = '/​bin/​echo';</​file>​
 +FIXME dans ce cas le backup pourrait essayer de se lancer alors que la machine n'est pas accessible. 
 +<​note>​**Pour faire encore mieux**, vous pouvez aussi réaliser un ping a travers le démon ssh en executant simplement la commande **cat** sur le fichier **/​dev/​null**. Ceci permettra de tester que le démon ssh est bien démarré et donc de tester que le serveur est accessible. Pour faire ceci, remplassez la configuration précédente par la ligne ci-contre: **$Conf{PingPath} = '/​usr/​bin/​ssh $host cat /​dev/​null';​** </​note>​
 et ajouter les chemins des scripts comme suit : et ajouter les chemins des scripts comme suit :
  
Ligne 534: Ligne 530:
  
 Il ne vous reste plus qu'à activer le [[:​wakeonlan|wol]] sur les postes clients... Il ne vous reste plus qu'à activer le [[:​wakeonlan|wol]] sur les postes clients...
 +
 +===== Faire une copie des sauvegardes sur un support externe avec RSYNC =====
 +
 +**Backuppc** gère **la déduplication des données**. C'est à dire qu'​après la copie des fichiers, si un fichier apparaît plusieurs fois, il n'en gardera qu'un seul exemplaire, en  créant des **liens matériels** (**hardlinks**) vers le fichier d'​origine.
 +
 +Lorsqu'​on sauvegarde avec un **rsync "​traditionnel"​** les sauvegardes de **Backuppc**,​ **rsync** ne gère pas les liens matériels, et recopie le fichier autant de fois qu'il y a de liens matériels. **Ce qui a pour effet de gonfler considérablement le volume des données**.
 +
 +Pour éviter cela, on indique à **rsync** qu'il doit gérer les liens matériels avec l'​option **-H**. Ce qui donne  :
 +
 +<​file>​rsync -rlptDvzH --delete-after /​chemin/​sauvegardes/​backuppc/​ /​chemin/​vers/​support/​externe/​sauvegardes/​backuppc</​file>​
 +
 +**ATTENTION !!! : cette opération entraîne une forte consommation en CPU et en RAM !!!**
  
 ===== Erreurs ===== ===== Erreurs =====
Ligne 564: Ligne 572:
  
 ----- -----
-// Contributeurs : [[:​utilisateurs:​Cyprien]],​wouldsmina,​ [[:​utilisateurs:​naoli]],​ snoopysnoopy [[:​utilisateurs:​Ool]] //+// Contributeurs : [[:​utilisateurs:​Cyprien]],​wouldsmina,​ [[:​utilisateurs:​naoli]],​ snoopysnoopy [[:​utilisateurs:​Ool]], gg [[:​utilisateurs:​gfontaniere]]  ​//


Le contenu de ce wiki est sous licence : CC BY-SA v3.0