Installation via apt-get. Noter le mot de passe généré automatiquement pendant l'installation (peN4e00f), le fichier étant /etc/backuppc/htpasswd.
Tout se fait via l'interface web, y compris l'ajout de clients !
Voir les effets (durée et charge) des sauvegardes complètes. D'après la doc, étant faites via rsync, elles ne sont pas réellement complètes.
Voir la possibilité pour un client d'avoir un accès simplifié à l'interface, afin de lui permettre de sauvegarder manuellement son poste. ⇒ Ok, il suffit de lui créer un compte apache.
Voir les possibilités de restauration.
L'utilisation de smb comme mode de transfert est déconseillé, les sauvegardes incrémentales ne sont pas précises ( notamment au niveau des suppression de fichier ).
L'utilisation de rsync est à privilégier, même si c'est un peu plus de boulot au niveau du poste client
apt-get install [[:backuppc|backuppc]] libfile-rsyncp-perl [[:apache|apache]]2-utils
changer le mot de passe de l'utilisateur:
htpasswd /etc/backuppc/htpasswd[[:backuppc| ]]
supprimer la ligne “Include /etc/backuppc/apache.conf” dans /etc/apache/httpd.conf
Créer un vhost dédié, vérifier les contrôles d'accès
Elle se fait désormais (2011/2013) exclusivement via l'interface web
voir [\[http://www.microsoft.com/downloads/details.aspx?displaylang=fr&FamilyID=8b081f3a-b7d0-4b16-b8af-5a6322f4fd01 | pfbackup\]]
Remarques: 'pfbackup sucks parce que ce n'est pas automatique.
[NewRep] path = /data/newRep comment = nouveau repertoire à sauvegarder
'
<code>
NewRep
</code>
' à la variable
<code>
$Conf{RsyncShareName}
</code>
par défaut, backuppc ne sauvegarde une machine que pendant les heures de fermeture du bureau.
Pourle faire tourner en permanence, jouer sur les variables suivantes:
mettre la variable
$Conf{BlackoutGoodCnt}
à une valeur négative
Quand ça ne marche pas, vérifier les points suivants:
chown -R [[:backuppc|backuppc]].[[:backuppc|backuppc]] ~backuppc
)
La restauration par zip semble ne pas fonctionner.
De même la restauration tar semble donner une archive corrompue.
Cependant, quelques tests apparemment concluants ont été effectués ( restauration ok, malgré des erreurs de tar sf en fin de fichier )
La restauration par rsync fonctionne très bien. Il faut mettre la variable read-only à false dans le fichier rsyncd.conf du client.
Ce type de retauration réécrit les fichiers choisis à leur emplacement d'origine. Il est possible de choisir un répertoire de destination différent.
Exemple de restauration par rsync, suite à la réinstallation d'un poste:
Autre possibilité de restauration:
sur le serveur, exécuter la commande /usr/share/backuppc/bin/BackupPC_tarCreate:
/usr/share/backuppc/bin/BackupPC_tarCreate -h patricia -n 302 -s sauvegardes "/Local Settings/Application Data/Microsoft/Outlook" > patricia.tar
ne pas oublier de rediriger la sortie standard vers un fichier.
Le script suivant permet de connaître l'âge de la dernière sauvegarde, qu'elle soit incrémentale ou complète. Il lit pour cela le fichier backupdir /pc/backups.
#! /bin/bash now=$(date "+%s" ) for host in /srv/backuppc/pc/* ;do echo -ne "${host##*/}: " age=$(tail -n1 ${host}/backups | awk '{print $4}') let "diff=$now-$age" let "diff/=24" let "diff/=3600" echo $diff done
À noter l'existence du script /usr/share/backuppc/bin/BackupPC_serverMesg qui permet de “communiquer” avec le serveur. Les arguments status host(nom machine) permet notamment de récupérer l'état des sauvegardes pour la machine donnée. Mais le résulat est difficilement exploitable.
Avec nagios et nrpe, à l'aide d'une version modifiée du script ci-dessus, on peut contrôler l'âge des sauvegardes.
Rajouter une directive
command[check_backuppc]=/etc/nagios/backuppc_check_age.sh 5 10
dans /etc/nagios/nrpe.cfg. Les 2 arguments de ce script sont:
Écrire le script de vérification /etc/nagios/backuppc_check_age.sh :
#! /bin/bash now=$(date "+%s" ) SERVICE="backups" STATE_OK=0 STATE_WARNING=1 STATE_CRITICAL=2 STATE_UNKNOWN=3 STATE_DEPENDENT=4 warning_host=() critical_host=() if [ $# -ne 2 ] ; then echo -e "Usage: $0 warning_age critical_age\n\t age in days" exit $STATE_UNKNOWN fi w=$1 c=$2 if [ $w -gt $c ] ; then echo "warning_age should be lower than critical_age" exit $STATE_UNKNOWN fi for host in /srv/backuppc/pc/* ;do hostname="${host##*/}" age=$(tail -n1 ${host}/backups | awk '{print $4}') let "diff=$now-$age" let "diff/=24" let "diff/=3600" if [ $diff -gt $c ] ; then critical_host=("${critical_host[@]}" "$hostname") continue fi if [ $diff -gt $w ] ; then warning_host=("${warning_host[@]}" "$hostname") fi done if [ ${#critical_host[@]} -gt 0 ] ; then echo "${SERVICE} CRITICAL - Backups too old for hosts: $critical_host" exit $STATE_CRITICAL fi if [ ${#warning_host[@]} -gt 0 ] ; then echo "${SERVICE} WARNING - Backups too old for hosts: $warning_host" exit $STATE_WARNING fi echo ${SERVICE} OK - backups OK exit $STATE_OK
s'assurer que le script fonctionne en tant qu'utilisateur nagios. Il faudra peut-être donner les droits de lecture à cet utilisateur sur le répertoire des sauvegardes
Sur le serveur nagios, rajouter le service ci-dessous:
define service{ host_name tourmaline service_description Etat des sauvegardes check_command check_nrpe_1arg!check_backuppc use generic-service }
Relancer les services nrpe et nagios respectivement sur le serveur backuppc et le serveurnagios
Lancer une sauvegarde en ligne de commande :
/usr/share/BackupPC/bin/BackupPC_serverMesg backup HOST HOSTIP USER 1(full)/0(incrementale)
# vim: set filetype=dokuwiki: