Linux als SOHO-Server
für Linux- und Windows-Clients |
Kapitel:
|
Bei dem Programm 'BackupPC' handelt es sich um eine Web-basierte Backup-Lösung zur Sicherung von diversen Clients mit verschiedenen Betriebssystemen, z.B. Unix/Linux- oder Windows-Systemen. Dabei ist 'BackupPC' mehr für die Sicherung im Netzwerk, mit mehreren zu sichernden Clients geeignet, als für die Sicherung von autonome Einzelplatzsysteme. 'BackupPC' unterstützt dabei volle- und inkrementelle-Sicherungen, das Programm basiert aus einer Reihe von Perl-Scripten, die über eine Weboberfläche bedient werden. Über diese können sich Benutzer und Administratoren einloggen, um Sicherungen zu erstellen oder Dateien/Verzeichnisse wiederherzustellen. Auch kann die Konfiguration über die Web-Oberfläche erfolgen. Der eigentliche Backup-Vorgang arbeitet dateiorientiert mit diverser Standard-Unix-Tools (wie z.B.: 'ssh', 'tar', 'rsync', 'smbmount', ...), dabei wird auf dem zu sichernden Systemen keine spezielle Client-Software benötigt. Weiterhin verfügt 'BackupPC' über ein informatives Reporting in Form von Status-Berichten und Log-Files, die über die Web-Schnittstelle, bzw. auch über E-Mails gegeben werden. Die Sicherungen werden von 'BackupPC' durch einen intelligenten zeitgesteuerten Backup-Plan angestoßen. Im Normalfall werden die Sicherungen auf ein Festplattenmedium (einzelne Festplatten, Raid-Arrays, Logical Volumes, etc.) gesichert, was eine sehr schnelle Sicherung und auch Wiederherstellung möglich macht. Auch angesichts der immer steigenden Kapazitäten und sinkenden Kosten von Festplatten ist dieses Medium hierfür prädestiniert. Auf der vorliegenden Seite wird der Einsatz von 'BackupPC' als Sicherungs-Lösung aufgezeichnet. Dabei wird zunächst auf die Installation/Konfiguration des Servers unter Debian-Linux eingegangen. Weiterhin wird anhand von zwei Beispiel-Clients das Vorgehen zum Sichern/Widerherstellen gezeigt. Bei den Beispiel-Clients wird exemplarisch ein Linux-System und ein Windows-System berücksichtigt. Installation von BackupPCWie unter Debian üblich, kann 'BackupPC' am einfachsten mittels 'aptitude install backuppc' installiert werden. Alle weiteren Abhängigkeiten, wie die Installation von 'Apache' oder den notwendigen 'Samba'-Komponenten, sowie die Erstellung eines gesonderten Benutzers, werden hierbei berücksichtigt. Während der Installation sind noch einige Fragen zu 'Samba' und 'BackupPC' zu beantworten:
Danach wird ein Standardbenutzer 'backuppc' für die Web-Administration erstellt. Das Passwort des erstellten Benutzers wird bei der Installation angezeigt, es sollte wie vorgeschlagen, mit dem Kommando 'htpasswd' nach Abschluss der Installation geändert werden: Nach Bestätigung mit dem 'Ok'-Buttons sollte die Installation abgeschlossen sein und ein erster Zugang auf die Web-Oberfläche kann versucht werden. Nach Eingabe von Benutzer und Passwort zur Authentifizierung, sollte sich 'BackupPC' im Browser ungefähr wie folgt darstellen: Über den Web-Zugang kann das Sichern/Widerherstellen der einzelnen Clients geschehen, sowie der Status von Server/Clients abgefragt werden. Auch kann hier die Konfiguration des Servers und der Clients zum größten Teil erfolgen, weiterhin steht eine Online-Dokumentation zur Verfügung. Nach der Installation ist als einziger Client der 'BackupPC'-Server selbst, als 'localhost', eingetragen. Mit dem 'localhost' sollte auch schon alles funktionieren, d.h. es kann schon jetzt eine Sicherung bzw. Wiederherstellung durchführen können. Auch sollte man sich jetzt schon mal mit dem Handling des über die Web-Oberfläche vertraut machen. Konfiguration von BackupPCIm weiteren Verlauf wird kurz auf die weitere globale Konfiguration von 'BackupPC' eingegangen. Dabei werden auch schon die ersten Vorbereitungen für zwei zu sichernde Clients berücksichtigt. Wie erwähnt, sollen eine Linux- und ein Windows-Client dem Sicherungs-Server exemplarisch hinzugeführt werden. Die Konfiguration kann über die Web-Oberfläche oder auch in den einzelnen Konfigurationsdateien geschehen. Da die Konfiguration über die Web-Oberfläche zunächst vielleicht etwas verwirrend erscheint und eine gewisse Vertrautheit verlangt, wird die Konfiguration mittels eines normalen Editors direkt in den Konfigurationsdateien erfolgen. Nach der Installation befinden sich die Konfigurationsdateien von 'BackupPC' im Verzeichnis '/etc/backuppc/'. Hier gibt es zwei elementare Konfigurationsdateien, die Datei 'hosts' und 'config.pl'. Die Konfigurationsdatei 'hosts' enthält sozusagen die zu berücksichtigen Clients vom 'BackupPC'-Servers, mit den dazu berechtigten Benutzern. Bezogen auf die Web-Oberfläche sind die Clients in der 'Select-Box' für die einzelnen Clients wiederzufinden. Hier der Aufbau und Inhalt der 'hosts'-Konfigurationsdatei:
In der ersten Spalte ist der Name des Backup-Clients zu finden, hier sollte
der 'hostname' bzw. 'NetBIOS'-Name eingetragen werden. In der zweiten Spalte ist
das DHCP-Flag zu finden, hierbei steht der Wert '0' für Systeme mit statische IP
und '1' für Systeme mit dynamische IP (DHCP). Die dritte Spalte beinhaltet einen
Benutzer, dem es erlaubt ist, sich an der 'BackupPC' Web-Oberfläche anzumelden
um diesen Backup-Client zu managen. In der vierten Spalte können noch weitere
Benutzer angegeben werden, die auch eine Berechtigung wie in der dritten Spalte
haben. Die zusätzlichen Benutzer müssen natürlich noch dem Backup-Server hinzugefügt werden. Hierdas Hinzufügen am Beispiel des Benutzers: 'localuser':
Die Konfigurationsdatei 'config.pl' ist als zentrale Konfigurationsdatei für alle Clients zu sehen. In ihr sind sozusagen die Default-Werte, die zunächst für alle Clients gelten, zu finden. Zusammen mit einer weiteren individuellen Client-Konfigurationsdatei '<CLIENT>.pl', wird hieraus die spezielle Konfiguration für den einzelnen Client gebildet. Auf die individuelle Konfigurationsdatei '<CLIENT>.pl' wird im weiteren Verlauf dieser Seite eingegangen. Für erste Versuche kann die zentrale Konfigurationsdatei zunächst so belassen werden, zumal fast jeder Parameter durch die individuelle Client-Konfiguration mit der Datei '<CLIENT>.pl' überschrieben werden kann. Hier ein Auszug aus der zentralen Konfigurationsdatei:
Parameter die man sofort anpassen kann sind z.B. '$Conf(TopDir)', welches
das Verzeichnis auf dem Server bezeichnet, wo die Sicherungen abgelegt werden. Oder 'Conf(Language)',
welches die Sprache der Web-Oberfläche definiert. Zu bemerken ist, gemachte Konfigurations-Änderungen erst berücksichtigt werden, wenn 'BackupPC' neu gestartet wird ('/etc/init.d/packuppc restart'). Bsp.-Konfiguration eines Linux-Clients 'nettop'Nun zur Sicherung eines Linux-Clients, wie schon in der obigen Konfigurationsdatei 'hosts' zu finden, der Client mit dem Namen 'nettop'. Allgemein wird von 'BackupPC' empfohlen einen Linux-Clients mit dem Tool 'rsync' zu sichern. Aus diesem Grund muss der Linux-Client über das SSH-Protokoll verfügen und auch das Tool 'rsync' installiert haben. Bezogen auf ein Debian-System können evtl. diese Komponenten einfach mit:
nachinstalliert werden. Als erstes sollte geprüft werden ob die Namensauflösung für den zu sichernden Client in beiden Richtungen korrekt arbeitet. Hierzu kann das Tool 'nslookup' genutzt werden:
Auch sollte die umgekehrte Auflosung IP-Adresse nach 'hostname' funktionieren:
Zu sehen ist hier, dass der Client 'nettop' und auch die IP-Adresse von 'nettop' korrekt aufgelöst werden (grüne Markierung). Damit der Zugriff auf dem Client gewährleistet ist, ist ein passwortloser
SSH-Zugang einzurichten. Hier ein komplettes Beispiel wie dieses zu machen ist:
Anschließend die notwendigen Aktionen für dem zu sichernden Linux-Client (ausgehend als Benutzer 'root' auf dem Client 'nettop'):
Nachdem die Keys erzeugt und ausgetauscht wurden, sollte der wechselseitige passwortlose SSH-Zugang geprüft werden. Das Prüfen des Zugangs kann, bezogen auf das Beispiel, mit dem Kommando:
auf dem Client erledigt werden. Beide Zugänge sollten nun ohne Passwortabfrage möglich sein. Als nächstes ist ist die individuelle Konfigurationsdatei für das zu sichernde System zu erstellen. Wie schon erwähnt, die Konfigurationsdatei für das zu sichernde System setzt sich aus der globalen Konfigurationsdatei 'config.pl' und '<CLIENT>.pl' zusammen, wobei die individuelle '<CLIENT>.pl' die Werte der globalen Konfigurationsdatei sozusagen überschreibt. Hier ein Beispiel einer individuellen Konfigurationsdatei, bezogen auf die Beispielsicherung die Datei 'nettop.pl':
Da die empfohlene Sicherungsmethode bei Unix-Systemen für 'BackupPC' 'rsync'
ist, wird der Parameter '$Conf(XferMethod' entsprechend gesetzt. Mit
'$Conf(RsyncShareName)' wird das
Verzeichnis definiert, ab der die Sicherung passieren soll. Dabei können mit '$Conf(BackupFilesExclude)'
gezielt Verzeichnisse ausgeschlossen werden. Bsp.-Konfiguration eines Windows-Clients 'notebook'In dem nun folgenden Beispiel, zum sichern eines Window-Systems, wird die Methode 'smb' mittels 'smbclient' eingesetzt. Das Windows-System hört dabei auf dem Namen 'notebook'. Auch sind bei dem zu sichernden Windows-System ebenfalls einige Dinge zu beachten und Vorbereitungen zu treffen, bevor mittels 'BackupPC'-Server gesichert werden kann. Zunächst sollte geprüft werden, ob die NetBIOS-Namensauflösung via 'nmblookup' gewährleistet ist. Hier ein Beispiel, ob die Auflösung vom Sicherungs-Server aus gewährleistet ist:
Es wird zunächst versucht anhand des NetBIOS-Namen 'notebook' die IP-Adresse
zu ermitteln. In diesem Beispiel wird diese mit der IP-Adresse '192.168.10.130'
positiv zurückgegeben.
In diesem Beispielen wird der NetBIOS-Name 'notebook' und auch die IP-Adresse '192.168.10.130' korrekt aufgelöst. Als nächstes ist auf dem Windows-Client eine Freigabe für den zu sichernden Bereich zu erstellen. Da in diesem Beispiel der komplette PC gesichert werden soll, ist das Laufwerk , in diesem Fall 'C:' freizugeben:
Als Freigabename wurde 'C' gewählt und hierfür eine Freigabeberechtigung für den Lokalen-Benutzer 'NOTEBOOK\Backup' erstellt, welcher einen Vollzugriff für die Freigabe besitzt, sodass auch ein Sichern und Widerherstellen möglich ist. Zuvor wurde der Lokale Benutzer 'Backup' dem System hinzugeführt und mit Administrationsrechten und einen Passwort versehen. Wie auch schon beim vorherigen Linux-Client ist auch für den Windows-Client eine individuelle '<CLIENT>.pl' zu erstellen., hier in diesem Beispiel mit den Namen 'notebook.pl':
Mit ' Sicherung/Widerherstellung mittels BackupPCNachdem der Backup-Server und die Clients eingerichtet sind, kann das Sichern und Wiederherstellen über die Web-Oberfläche von 'BackupPC' erfolgen. Ausgehend von der Web-Startseite von 'BackupPC', ist zunächst der zu berücksichtigenden Client aus der 'Select Box' auszuwählen. Zum Sichern eines Clients kann ausgehend von der Hauptseite des Clients nun ein vollständiges- bzw. inkrementeles-Backup gestartet werden. Nach einigen Bestätigungen zum Starten der Sicherung sollte der Sicherungs-Job aktiv werden. Je nach Größe des zu sichernden Datenbestands, kann dieses einige Zeit in Anspruch nehmen. Der Erfolg der Sicherung kann in den Log-Dateien, die auch über die GUI von 'BackupPC' erreichbar ist, geprüft werden. Zum Wiederherstellen von Verzeichnissen und Dateien ist der Punkt 'Datensicherung anzeigen' auszuwählen, woraufhin sich eine Art Explorer mit der kompletten Datensicherung des jeweiligen Clients öffnet. In diesem Art Web-Explorer kann wie gewohnt navigiert werden. Dateien oder Verzeichnisse können einfach zum Wiederherstellen selektiert werden und die Widerherstellung kann eingeleitet werden. Auf jeden Fall sollte man sich gerade mit der Bedienung der GUI-Oberfläche von 'BackupPC' vertraut machen und einige Sicherungen und Wiederherstellungen von Clients für den evtl. eintretenden Ernstfall üben. AnmerkungenEinige Konfigurationsbeispiele für diverse Client-Konfigurationsdateien '<CLIENT>.pl' sind im Verzeichnis '/usr/share/doc/backuppc/examples' zu finden. Diese Dateien können als Template für eigene individuelle Lösungen dienen. Auch sollte man sich mit der Konfiguration von Zeitplänen die von 'BackupPC' unterstützt werden vertraut machen. Die Dokumentation bietet hier Hilfestellung. Mit dem Parameter '$Conf(EMailAdminUserName)' kann eine E-Mail Adresse festgelegt werden. Eine Test-Mail kann als Benutzer 'backuppc' mit folgenden Kommando versendet werden:
Weitere Infos
letzte Änderung: 08. Mai 2009 |
Copyright © 2004 Norbert Eusterholz |