logo université de Strasbourg logo CNRS logo INSA Strasbourg logo ENGEES

Service informatique

BackupPC

De Service informatique
Aller à la navigation Aller à la recherche

Présentation

BackupPC est un logiciel libre écrit en PERL qui permet de sauvegarder différents postes, sous Linux, Unix, Mac Os X ou Windows. BackupPC peut utiliser différents protocoles: SMB (Server Message Block) avec samba, rsync, tar (Tape ARchive) via SSH (Secure SHell), RSH (Remote SHell) ou NFS (Network File System).

BackupPC est hautement configurable, beaucoup d'options vous sont proposées, tant au niveau des données à sauvegarder qu'au niveau de leur fréquence ou encore de l'historique des sauvegardes à conserver.

Dans le cadre des sauvegardes incrémentielles, BackupPC utilise des liens physiques vers les fichiers qui n'ont pas été modifiés ; ce qui vous garanti un accès à l'intégralité de vos données depuis une sauvegarde incrémentielle sans augmenter l'espace disque requis.

Installation

Sur Debian Etch (4.0)

apt-get install backuppc

nécessite, entre autres, apache apache-common apache2-utils backuppc libarchive-zip-perl libcompress-zlib-perl perl-suid samba-common smbclient wwwconfig-common

Samba

Demande Nom de Domaine: Tech
Modifier smb.conf pour utiliser les paramètres WINS fournis par DHCP ? Non

Backuppc

Création de l'utilisateur par défaut pour l'administration Web.


BackupPC peut être géré avec une interface Web: http://MACHINE/backuppc/

A cet effet, un utilisateur web nommé « backuppc » a été créé. Son mot de passe est actuellement « yEk5GRUO ». Vous pouvez changer ce mot de passe avec la commande:

htpasswd /etc/backuppc/htpasswd backuppc


j'ai dû relancer un dpkg-reconfigure backuppc pour rendre active l'interface web de backuppc.

???

Configuration de backuppc

Pour que l'interface d'administration web de Backuppc fonctionne correctement,
j'ai besoin d'ajouter une ligne dans votre configuration d'apache qui va
activer quelques alias. Si vous ne faites pas confiance aux modifications
automatiques, vous pourrez ajouter vous-même un « include » du fichier
/etc/backuppc/apache.conf plus tard.

Ajouter un alias pour /backuppc/ dans votre configuration d'apache ? <Oui>

Par défaut, backuppc sauvegarde le répertoire /etc de la machine sur lequel il est installé.

Espace de sauvegarde

Utilisation d'un deuxième disque pour la sauvegarde

cfdisk /dev/sdb


New (Create new partition from free space)
Primary (Create a new primary partition)
Size => Tout le disque choix par défaut
Write
Yes
Quit

 mkfs.reiserfs /dev/sdb1

Rajout de la ligne

/dev/sdb1     /var/lib/backuppc reiserfs defaults    0      2

à /etc/fstab

Déplacement de l'espace de sauvegarde

On peut éviter cette étape si on crée l'espace de stockage /var/lib/backuppc sur le second disque avant

/etc/init.d/backuppc stop
cd /var/lib
mv backuppc/ backuppc.old
mkdir backuppc
chmod 750 backuppc
chown backuppc:backuppc backuppc
mount /var/lib/backuppc
cd backuppc.old
tar cv * |(cd ../backuppc; tar xvf -)  Pour conserver les liens physiques
/etc/init.d/backuppc start

Configuration

/etc/backuppc/hosts

Fichier définissant la liste des machines à sauvegarder

host               dhcp    user     moreUsers     # <--- do not edit this line
localhost          0       backuppc
wilde              0       backuppc
lsiit-a            0       backuppc frey,muller

La première colonne correspond au nom d'hôte.
La seconde spécifie si DHCP doit être activé pour la recherche de l'hôte.
La troisième colonne indique l'utilisateur "propriétaire" de l'hôte,
la quatrième et dernière les utilisateurs supplémentaires.
Pour chaque hôte, les utilisateurs listés dans ce fichier ainsi que l'administrateur pourront via l'interface d'administration lancer la sauvegarde et la récupération des données.
Chaque utilisateur nommé ici doit exister dans le fichier des utilisateurs (dans notre cas /etc/backuppc/htpasswd).

/etc/backuppc/config.pl

Fichier général de configuration. Chaque variable pouvant être modifiée ensuite dans un fichier spécifique pour chaque client /etc/backuppc/machine.pl

Options de configuration choisies

  • $Conf{BackupFilesOnly} = ['/etc/', '/var', '/home'];
  • $Conf{BackupFilesExclude} = ['/var/cache', '*.nobackup', '*/tmp', '*.mp3', '*.avi', '*.m4a', '*.ogg', '*.vob', '*.mov', '*.o', '.Trash*', '*/Desktop/Trash*', '*TMP', '*.svn', 'firefox/*/Cache']; + cas particuliers à revoir '*/*Maxil*o', '/home/miv/brucher/local', '/home/technique/pruniere/Sauvegarde'
  • $Conf{XferMethod} = 'rsync'; rsync via ssh (pas de démon rsyncd sur les clients)
  • $Conf{RsyncClientCmd} = '$sshPath -C -x -l root -o StrictHostKeyChecking=no -o PreferredAuthentications=publickey $host $rsyncPath $argList+';
  • $Conf{RsyncClientRestoreCmd} = '$sshPath -C -q -x -o StrictHostKeyChecking=no -l root $host $rsyncPath $argList+';
    • -o StrictHostKeyChecking=no pour ne pas avoir la question Are you sure you want to continue connecting à la première connection ssh
    • voir option -q et -C
  • $Conf{ArchiveComp} = 'bzip2';
  • $Conf{EMailAdminUserName} = 'pruniere@lsiit.u-strasbg.fr';
  • $Conf{EMailUserDestDomain} = '@lsiit.u-strasbg.fr';
  • $Conf{Language} = 'fr';
  • $Conf{CgiDateFormatMMDD} = 0; Pour avoir la date au format DD/MM

Changement des mots de passe

à faire sur le serveur cfengine (càd sur lsiit):

htpasswd  /etc/cfengine2.conf/conf/etc/backuppc/htpasswd USER

ensuite propagation du mot de passe sur lsiit-a et lsiit-b

Consultation des sauvegardes

http://lsiitng/backuppc/

Sur poste Windows

2 manière de sauvegarder un poste windows avec backuppc.

  • à l'aide d'un partage samba sur un réseau local
  • à l'aide de rsync

avec Rsync

Il faut installer rsync sur le poste windows. On peut le trouver sur sourceforge et j'en ai fait un fichier .zip pour qu'il soit déjà préconfiguré: Cygwin-rsyncd-2-6-8_0-lsiit.zip‎ ‎

  1. Créer un compte root/algo
  2. Extraire cygwin-rsyncd-2.6.8_0-lsiit.zip vers C:Rsyncd
  3. Modifier rsyncd.conf
  4. Laisser passer ping (ICMP autoriser echo entant) et rsyncd (TCP 873) sur le par-feu windows
  5. Exécuter cmd : service.bat

Machines dans le réseau adm

Si le ping (donc aussi les sauvegardes) ne passent plus vers les machines du réseau administratif c'est que la route est peut-être "tombée" donc sur lsiit-a:

ip route add 130.79.218.0/23 dev eth0 via 130.79.91.254 src 130.79.90.9

Liens utiles

Sauvegarde avec BackupPC - Johan CWIKLINSKI