Test du logiciel backuppc:
Apres l'installation du logiciel: (apache2 ....
Changer le mot de passe de l’utilisateur « backuppc »:
# htpasswd /etc/backuppc/htpasswd backuppc
Explication du /etc/backuppc/config.pl:
$Conf{ServerHost} = '192.168.2.151'; // l’adresse ip du serveur ou le nom du serveur de sauvegarde.
$Conf{WakeupSchedule} = [13]; // pour lancer la sauvegarde à 13h l’heure ou par exemple
$Conf{WakeupSchedule} = [1..24]; // toutes les heures de la journée
$Conf{MaxBackups} = 4; // nombre maximum de sauvegardes sumultanee à effectuer
$Conf{CompressLevel} = 3; // taux de compression qui peut prendre des valeurs entre 0 et 9 (0 pour désactiver la compression). 3 est la valeur recommandée pour avoir une
bonne compression sans trop surcharger le processeur.
$Conf{MaxOldLogFiles} = 28; // L'âge max des logs (en jours)
$Conf{DfMaxUsagePct} = 92; // à 92% de saturation de disque il donne une notification de saturation du disque.
$Conf{BackupPCUser} = 'backuppc' // le nom de l’utilisateur qui à l’accès de faire le backup dans le serveur.
$Conf{FullPeriod} = 13.97; // full backup par exemple toutes les 2 semaines (par PC )
$Conf{IncrPeriod} = 0.97; // Incrémental backup tous les jours
$Conf{FullKeepCnt} = 6; // 6 backup complets
$Conf{FullAgeMax} = 93; // Age maximale des backup-complet = 93 jours par exemple
$Conf{FullKeepCntMin} = 1; // Garder au minimum un backup-complet, même s'il est plus vieux que 93 jours.
$Conf{IncrKeepCnt} = 15; // On garde par exemple 15 sauvegardes incrémentales, ce qui nous fait 15 jours.
$Conf{IncrAgeMax} = 30; // 30 jours max pour l'âge des sauvegardes incrémentales.
$Conf{IncrKeepCntMin} = 3; // On garde 3 sauvegardes incrémentales quelques soient leur âge.
$Conf{BlackoutPeriods} = [
{
hourBegin => 7.5, // de 7:30 AM a 6 :30
hourEnd => 18.5,
weekDays => [1, 2, 3, 4, 5], // du lundi au vendredi
},
]; // la période où il faut pas faire trop de backup si les machines ne répondent pas bien aux pings. Le logiciel fait des pings périodiques et garde des statistiques. Il sait donc quand une machine ou le réseau vers la machine est un peu saturé.
$Conf{XferMethod} = 'rsync'; // La méthode de sauvegarde par défaut (Ca pourra etre tar, rsyncd,smb)
$Conf{PingMaxMsec} = 999; // Délai maximum pour un ping, avant de considérer que le PC n'est pas joignable et donc ne peut se faire un backup.
$Conf{Language} = 'fr' // l'interface Web et les messages en français ou « en » pour l'anglais.
$Conf{SendmailPath}='/usr/sbin/
$Conf{SendmailPath} = '/usr/sbin/sendmail'; au début il faut que le Serveur mail 'Sendmail' et le domaine sont configuré pour spécifier ce path
$Conf{EMailNotifyMinDays} = 2.5; : période minimale durant laquelle un utilisateur ne recevra pas de mails. La valeur par défaut (2.5) signifie que l'utilisateur ne recevra qu'un message tous les trois jours au maximum
$Conf{EMailFromUserName} = 'backuppc'; : adresse de l'expéditeur. Les emails envoyés prendront en champ from la valeur indiquée ici. Il est possible d'indiquer le nom d'utilisateur ou l'adresse email complète en fonction de la configuration de votre serveur mail.
$Conf{EMailAdminUserName} = 'admin-backup@backup.domain.com'; : adresse email de l'administrateur du serveur de sauvegarde
$Conf{EMailUserDestDomain} = '@domain.com'; : domaine des utilisateurs. Les emails seront envoyés à l'adresse {utilisateur}@domain.com
la configuration de l'interface CGI :
$Conf{CgiAdminUserGroup} = ; : groupe des utilisateurs administrateurs. Le groupe doit exister dans le fichier .htpasswd
$Conf{CgiAdminUsers} = 'admin utilisateur1'; : utilisateurs administrateurs. Chaque utilisateur doit exister dans le fichier .htpasswd
$Conf{CgiURL} = 'http://backup.domain.com/cgi-bin/BackupPC_Admin'; : adresse HTTP du script CGI
$Conf{Language} = 'fr'; : langue de l'interface CGI
$Conf{CgiDateFormatMMDD} = 0; : format de date. 0 pour le format internationnal (JJ/MM) et 1 pour le format US (MM/JJ)
Ce sont les options les plus importantes de la configuration de BackupPC
On doit redémarrer le serveur backuppc en tapant :
# /etc/init.d/backuppc restart Fichier de configuration par hôtes Pour configurer ou ajoute un utilisateur on entre dans host dhcp user moreUsers hostname1 1 user2 stillanotheruser //exemple Pascal 0 backuppc //exemple Ziad 0 backuppc //exemple 192.168.2.161 0 backuppc //si on n’a pas un DNS server on met l'adresse IP Après le changement dans le fichier Donc on écrit : Il faut qu’on crée un répertoire qui a le nom du « # su backuppc //on change du utilisateur root a backuppc # cd /var/lib/backuppc/pc/ # mkdir 192.168.2.161 //crée le répertoire 192.168.2.161 qui et l’utilisateur qu’on doit lui faire un backup (le hostname ou l'adresse ip de l’utilisateur parai dans la liste des hôtes dans l’interface graphique du serveur) On doit ensuite ajouter dans ce répertoire un fichier On doit mettre en place une authentification par clé RSA pour l'accès SSH, pour que le serveur de sauvegarde puisse se connecter avec son utilisateur backuppc en tant que super-utilisateur root sur notre serveur Linux : l'intérêt est que les scripts de Voici un exemple de fichier config.pl à créer pour notre hôte Linux : $Conf{XferMethod} = 'rsync'; //c’est le protocole il peut être encore ‘tar’ ou ‘smb’(pour une machine Windows)) $Conf{BackupFilesExclude} = [ '/proc/*', '/dev/*', '/sys/*', '/tmp/*']; // nous n'avons aucune utilité à sauvegarder /dev, /tmp, /proc ou /sys puisque ceux-ci ne contiennent aucune donnée réelle ; de la même manière que nous ne voulons pas sauvegarder les partitions montées /media et /mnt, puisque si nous le faisions nous demanderions la sauvegarde des répertoires non existant dans la configuration de la machine de restauration comme les clés USB par exemple, ce qui nous entrainerait dans un cycle infini. La raison d'être de l'instruction 'proc/*' et non de '/proc' tout court est de permettre une copie du seul répertoire sans procéder à celle de son contenu. La syntaxe utilisée est la même, et pour les mêmes raisons, pour /tmp, /sys et les points de montage. De cette manière si nous détruisons notre partition racine et ensuite on fait une restauration intégrale, les répertoires correspondant à /tmp, /proc, /sys et ceux ou seront montés les systèmes de fichiers de nos partitions seront re-créés automatiquement. ]; $Conf{RsyncRestoreArgs} = [ ]; $Conf{RsyncLogLevel} = 1; Fichier spéciaux : Linux soutien plusieurs systèmes de fichiers spéciaux comme les liens symboliques, de caractères et de bloquer les fichiers de périphériques FIFOs (pipes), et unix-domain sockets. Ces fichiers sont compressés et mis en commun comme n'importe quel fichier en cas de sauvegarde. Dans tous les cas, le type de fichier est stocké dans l'attribut de fichier de sorte qu'il puisse être correctement restaurée. Donc au lieu d'écrire --links, --hardlinks, --sockets on les remplace par --specials Passons à l'authentification par clé RSA. Nous allons copier la clé d'authentification de l'utilisateur backuppc de notre serveur de sauvegarde, sur l'hôte Linux. Première étape, si ce n'est pas déjà fait : générer les clefs sur le serveur de sauvegarde : # su – backuppc Votre clé d'authentification se trouve dans ~backuppc/.ssh/id_rsa.pub. Ajoutons là sur l'hôte Linux afin d'autoriser cet utilisateur+machine précis à se connecter en root sur le serveur Linux qui devra être sauvegardé : # mkdir ~root/.ssh/ copier le clé id_dsa.pub au client 192.168.2.161 : # ssh-copy-id -i id_dsa.pub root@192.168.2.161 Essayons à présent de nous connecter, depuis le serveur de sauvegarde avec backuppc, en root sur le serveur Linux : $ ssh root@192.168.2.151 //c’est l’adresse ip du serveur Donc il faut qu’on soit connecté sans avoir eu besoin d'entrer de mot de passe. Configuration d'un hôte Windows Voici un fichier config.pl typique à mettre en place pour une machine sous Windows qui possède les partages "Disque_C" et "Disque_D", et qui sont accessibles grâce à l'utilisateur "backup" et le mot de passe "root" : $Conf{XferMethod} = 'smb'; //c’est le protocole pour la connection avec la machine WINDOWS. Donc on a configurée le fichier config.pl pour un hôte Linux et l’autre Windows. Utiliser l'interface Maintenant retournant sur l'interface web de gestion des sauvegardes, et lançons nos premières sauvegardes d'un simple clic ! La toute première sauvegarde (complète) sera bien entendu plus longue que les suivantes (incrémentales). Toute la puissance et la souplesse de Restauration avec BackupPC : C'est bien de sauvegarder, mais il faut aussi savoir restaurer. Sinon, ça ne sert à rien de sauvegarder. Pour cela on a trouver que pour la restauration d’une hôte Linux on doit suivre les étapes suivantes et dans l’ordre : 1- On suppose qu’on a 3 partitions déjà crée sur la machine Linux déjà sauvegarder et on doit maintenant la restaurer 2- les partitions sont : « sda1 » qu’on mount sur elle le « / » ; « sda2 » qu’on mount sur elle « /home » et « swap » pas de mount sur elle . 3- on suppose qu’on utilise un « RescueCD » 4- on démarre l’ordinateur qu’on doit le restaurer sur le « RescueCD » 5- on doit au début configurer la connexion réseau, donc on tape : # 6- on tape « 7- on a déjà dit qu’on doit crée 3 partions sont « sda1 », « sda2 » et « sda3 » 8- on fait 9- on tape 10- 11- 12- on entre dans l’interface graphique du serveur BackupPC et on clique sur le hôte qu’on doit restaurer les données 13- on fait « select all » dans le « full backup » pour le hôte qu’on doit le restauré et dans «Restore the files below dir » on met « /mnt/target » 14- Pour restaurer « /home » on met dans “Restore the files below dir” “/mnt/target/home” et on fait “restore” 15- cette étape n’est pas nécessaire parce que les répertoires “/proc, /sys, /dev” contiennent des informations temporelles et si on voit dans les fichiers déjà sauvegarder on ne trouve rien dans ces répertoires, un autre point c’est qu’on a déjà exclus les répertoires “/dev et /proc” dans la configurations de ce hôte. 16- on revient dans la ligne de commande sur l’ordinateur a restaurer et on tape : 17- N'oublions pas que notre “ Boot Loader” doit être installer et on doit configurer Grub sur le MBR (Master Boot Record) Si on a une seule partition sur le disque dur qui a le « Boot Loader » on peut directement utiliser la commande : # Sinon il faut on utilise la commande : # Alors on execute les commandes suivantes : Si le Grub donne une erreure donc on peut essayer la commande suivante: #
BackupPC peuvent alors se connecter de manière sécurisée sur l'hôte à sauvegarder, sans demande de mot de passe.
$Conf{RsyncClientPath} = '/usr/bin/rsync';
$Conf{RsyncClientCmd} = '$sshPath -l root $host $rsyncPath $argList+';
$Conf{RsyncClientRestoreCmd} = '$sshPath -l root $host $rsyncPath $argList+';
$Conf{RsyncShareName} = ['/', '/home']; //de sont les repertoire qu’on doit faire une sauvegarde.
$Conf{RsyncArgs} = [
'--numeric-ids',
'--perms',
'--owner',
'--group',
'--devices',
$ ssh-keygen -t rsa
<enter>
<enter>
$ cat .ssh/id_rsa.pub
# vi ~root/.ssh/authorized_keys2
:wq
$Conf{SmbShareName} = ['Disque_C', 'Disque_D']; // on donne le nom des répertoires partager sur WINDOWS.
$Conf{SmbShareUserName} = "backup"; //c’est le username
$Conf{SmbSharePasswd} = "root"; //c’est le password
# chroot /mnt/target /bin/bash ( Le répertoire /mnt/target devient le répertoire racine pour le nouveau processus et ses fils, donc c'est "/" )
#root (hd0,?)
#setup (hd0)
Si le problème n’est pas résolu on doit voir ce site pour essayer de trouver une solution:
http://www.gentoo.org/doc/fr/grub-error-guide.xml
………………………………………………………………………………………..
Définitions de :
/mnt :
Point de montage pour les systèmes de fichiers temporaires (abréviation de mount)
/proc :
Système de fichiers virtuel documentant le noyau et les différents processus (abréviation de processes)
/sys:
Donne des informations sur les périphériques du système et leurs pilotes, et est également utilisé pour configurer certaines fonctionnalités du noyau.
Comme: /sys/devices/ (représentant la couche physique)
/dev:
Fichiers correspondant (directement ou non) avec un périphérique (abréviation de device)
· Les fichiers de périphériques
· périphériques physiques (disque, réseau, bande, disquette )
/dev/cdrom
· périphériques virtuels:
· /dev/null
· /dev/zero
/media:
Point de montage pour les media amovibles, tels que CD-ROM ou clé USB
Fichier spéciaux
'--specials':
Linux soutien plusieurs systèmes de fichiers spéciaux comme les liens symboliques, de caractères et de bloquer les fichiers de périphériques FIFOs (pipes), et unix-domain sockets. Ces fichiers sont compressés et mis en commun comme n'importe quel fichier en cas de sauvegarde. Dans tous les cas, le type de fichier est stocké dans l'attribut de fichier de sorte qu'il puisse être correctement restaurée.
Donc au lieu d'écrire --links, --hardlinks, --sockets on peut utiliser --specials