BackupPC, wie der Name schon sagt

BackupPC ist der Name eines Debian Paketes, mit dem Backups erstellt werden können. Weitergehende Informationen, insbesondere eine gute Dokumentation finden sie auch hier: http://backuppc.sourceforge.net

Es wird installiert mit:

aptitude install backuppc

Hierbei wird uns ein Passwort mitgeteilt, dass wir uns, Pardon ich nicht, nur sie bitte, exakt notieren ;-) Nach erfolgreicher Installation als erstes den backuppc stoppen.

/etc/init.d/backuppc stop

BackupPC Konfigurationsschritte

Apache

In das Verzeichnis /etc/apache2/conf.d/ einen Link zu backuppc Webserver Konfiguration legen:

ln -s /etc/backuppc/apache.conf /etc/apache2/conf.d/backuppc.conf

Plattenplatz

Wichtig zu wissen wäre noch, es ist schon ein Backupprogramm aktiv, dass schon von DebianEdu bei der Installation aktiviert wurde. Es heisst slbackup und basiert auf dem Backuptool rdiff-backup. Dies gilt es auszuschalten, da es sonst unseren neuen Datenpool nochmal sichern würde.

# vim /etc/cron.d/slbackup

Der Einfachheit halber kommentieren wir einfach den Startbefehl hier aus. Somit sieht diese Datei dann so aus:

# cron job for Skolelinux Backup (once a day)
# 00 01 * * * root if [ -x /usr/share/slbackup/slbackup-cron -a -f /etc/slbackup/slbackup.conf ]; then /usr/share/slbackup/slbackup-cron ; fi

Wir nutzen nun einfach den Plattenplatz, der für slbackup schon angelegt wurde. In der Etch Version ist dies: /skole/backup wie auch schon in der Sarge Version. Wir nutzen das so:

cp -a /var/lib/backuppc/* /skole/backup/

Damit sichern wir das, was BackupPC schon bei der Installation angelegt hat. Dann löschen wir (erst nach dem kopieren ;-) :

rm -rf /var/lib/backuppc

Als letztes erstellen wir den symbolischen Link:

ln -s /skole/backup /var/lib/backuppc

Konfiguration von BackupPC

Nun die Anpassung von BackupPC an DebianEdu. Hierzu wechseln wir mit # cd /etc/backuppc in das Konfigurationsverzeichnis von BackupPC. Ein # ls -al zeigt uns die dort liegenden Dateien.

tjener:/etc/backuppc# ls -al
insgesamt 143
drwxr-xr-x   2 root root  1024 2007-04-10 23:28 .
drwxr-xr-x 128 root root  8192 2007-04-10 16:53 ..
-rw-r--r--   1 root root   414 2007-02-06 19:46 apache.conf
-rw-r--r--   1 root root 64733 2007-04-10 23:28 config.pl
-rw-r--r--   1 root root 64397 2007-02-06 19:46 config.pl.org
-rw-r--r--   1 root root  2368 2007-04-10 22:33 hosts
-rw-r--r--   1 root root     0 2007-04-10 10:00 htgroup
-rw-r--r--   1 root root    23 2007-04-10 10:04 htpasswd

Im Einzelnen sehen wir da folgendes:

config.pl

Diese Datei sollte erstmal, bevor wir sie mit unseren Einstellungen verändern durch # cp -a config.pl config.pl.org kopiert werden, so dass wir später immer eine Referenz auf das Original haben ;-) In dieser Datei werden nun die systemweiten Einstellungen vorgenommen, die für einen Einsatz von BackupPC auf einem tjener zunächst sinnvoll erscheinen. Ich habe erstmal diese Einstellungen hier gewählt (womöglich muss man aber noch ein wenig Feintuning machen) Meine Änderungen:

# to specify two pools (10.0.2.10-10.0.2.29 and 10.0.2.50-99)
$Conf{DHCPAddressRanges} = [
         {
            ipAddrBase => '10.0.2',
            first => 10,
            last  => 29,
        },
        {
            ipAddrBase => '10.0.2',
            first => 50,
            last  => 99,
        },
    ];
$Conf{BackupZeroFilesIsFatal} = 0;
$Conf{XferLogLevel} = 2;
$Conf{EMailAdminUserName} = 'root';
$Conf{EMailUserDestDomain} = '@intern';
$Conf{Language} = 'de';

Als nächstes erweitern wie die Datei hosts um folgende Einträge, so dass BackupPC nun auch weiss, welche Maschinen es sichern soll:

host        dhcp    user    moreUsers     # <--- do not edit this line
...
tjener.intern   0       root              # <--- mainserver
ltspserver00.intern     1       root      # <--- first ltspserver
static00.intern 1       root              # <--- first workstation client

Da der tjener sich selbst sichern soll, habe ich ihn mit einer eigenen Konfigurationsdatei versehen. Diese heisst erstmal localhost.pl und liegt ebenfalls im Verzeichnis /etc/backuppc. Um eine bestimmte Maschine anders als mit dem Systemstandard zu sichen, erstellt man einfach eine Konfigurationsdatei config.pl und legt sie in den Sicherungspool der Maschine. Da dieser aber noch nicht existiert, erstellen wir ihn uns einfach mit:

# mkdir -p /skole/backup/pc/tjener.intern

Mit # cd /skole/backup/pc/tjener.intern wechseln wir in dieses Verzeichnis und erzeugen dort mit z.B. vim config.pl die gewünschte Datei. Diese füllen wir wie folgt diesem Inhalt:

#
# Local server backup of /etc and /skole/tjener as user root
#
$Conf{XferMethod} = 'rsync';
$Conf{RsyncShareName} = ['/etc', '/skole/tjener'];
$Conf{RsyncClientCmd} = '/usr/bin/sudo $rsyncPath $argList+ $shareName';
$Conf{RsyncClientRestoreCmd} = '/usr/bin/sudo $rsyncPath $argList+ $shareName';

Wie man daraus sehen kann, benutzen wir rsync mit sudo, um erstmal /etc und /skole/tjener zu sichern. Daraus folgt aber auch, dass wir sudo noch einrichten und für rsync eine Bibliothek nachinstallieren müssen, die nicht von BackupPC automatisch mitinstalliert wurde, da BackupPC standardmässig mit tar arbeitet. Also erstmal mit # aptitude install libfile-rsyncp-perl das fehlende Paket nachinstallieren. Danach können wir nun mit # visudo folgenden Eintrag zur Datei /etc/sudoers hinzufügen (und zwar nur so den Eintrag hinzufügen!).

backuppc ALL=NOPASSWD: /usr/bin/rsync --server --sender *

So, das sollte es nun erstmal mit der Konfiguration gewesen sein. Starten wir also noch mit # /etc/init.d/backuppc start die Serverprozesse von BackupPC.

Backup und Restore

Jetzt wird es spannend. Nun wollen wir auch sehen, was BackupPC für uns tun kann. Wir melden uns also erstmal am Webinterface an. Dies kann von dem tjener aus erfolgen, wenn er das Arbeitsstations- oder Terminalserverprofil installiert hat, oder von einem Client im Netz. Wir richten unseren Browser also auf http://tjener.intern/backuppc und melden uns bei der nun erscheinenden Benutzeranmeldung mit dem Benutzer: "backuppc" und dem bei der Installation von BackupPC vergebenen Passwort an. (Sie hatten es ja exakt notiert, bzw. auswendig gelernt, oder?)

Vor uns tut sich nun die Welt von BackupPC auf. Das erste was wir da machen ist, wir drücken auf der Linken Seite auf den Link: Dokumentation ;-)

Nachdem wir diese gelesen und verstanden haben, erklärt sich der Rest wie von alleine. Darum hört diese Einführung hier auch auf :-)

Sicherheit

Es wird unbedingt empfohlen, dies zu lesen: http://backuppc.sourceforge.net/faq/security.html (Es ist zwar auf Englisch, aber das sollten sie sich als Admin eines tjener mal antun!)

Testen und Probieren

Was ich aber auf jeden Fall zumindest noch erwähnt haben wollte ist, dass Sie Testen und Probieren müssen. Also Backups erstellen, die Dateien löschen, und ganz wichtig, Sie müssen sie auch wiederherstellen können. Üben Sie dies, überprüfen sie dabei alle Funktionalitäten, passen sie das System nach ihren Bedürfnissen weiter an und geniessen Sie dann NICHT die Sicherheit eines guten Backupsystems. Beobachten Sie es weiter und schauen sie nach Unregelmässigkeiten, lesen sie Logfiles, um immer Bescheid über ihre Daten zu wissen.

So, das wars!

PS: ... wie man ein Passwort für das Login von BackupPC ändert? Ja, wie immer bei htpasswd. (# man htpasswd hilft auch hier ;-) )

# htpasswd /etc/backuppc/htpasswd backuppc 

BackupPC (zuletzt geändert am 2013-11-03 12:11:01 durch anonym)

Alle Inhalte in diesem Wiki stehen unter der GPL.