Linux als SOHO-Server
für Linux- und Windows-Clients |
Kapitel:
|
'amanda' (Advanced Maryland Automatic Network Disk Archiver) ist ein Programmpaket zum Sichern kompletter Netzwerkumgebungen. Zentraler Teil ist dabei ein Backup-Server, der über ein entsprechendes Sicherungsmedium (z.B. Bandlaufwerk) verfügen sollte. Der Backup-Server bezieht von den angeschlossenen Backup-Clients die zu sichernden Daten über das Netzwerk, speichert sie gegebenenfalls zwischen, um sie anschließend auf den Sicherungsmedium zu archivieren. Dabei kann die Komprimierung vorhandener Hardware genutzt werden. Falls keine Hardware-Komprimierung zur Verfügung steht, kann eine Software-Komprimierung genutzt werden, die wahlweise auf dem Client oder dem Backup-Server erfolgen kann. Bei der Sicherung ist eine parallele Abfrage mehrerer Clients möglich. Auch kann die Netzwerklast für 'Amanda' eingestellt werden, sodas ein Weiterarbeiten im Netzwerk möglich ist. Als zu sichernde Clients kommen Linux-Systeme und Systeme die das SMB-Protokoll, also auch Windows-Systeme in frage. Nach Abschluss jeder Sicherung wird eine ausführlicher Bericht generiert, der z.B. als Email versandt wird. Bei der Sicherung mit Amanda wird kein eigenes Datensicherungsformat verwendet, sondern es werden die gängigen Kommandos wie: 'dump' und 'tar' verwendet, so das im Extremfall mit simplen Methoden auf das Backup-Medium zurückgegriffen werden kann. Bei der Sicherung mit 'amanda' wird eine Kombination aus vollständigen und inkrementellen Backups aller zu sichernden Daten genutzt, dazu werden folgende Informationen verwendet:
amanda verfolgt dabei eine Doppel-Strategie: eine vollständige Sicherung der Daten innerhalb jedes Zyklus und gleichzeitig Sicherstellung, dass alle veränderten Daten zwischen den vollständigen Sicherungen gesichert werden. Bei jedem Sicherungslauf führt 'Amanda' ein vollständiges Backup eines Teils der Daten durch, genauer gesagt exakt des Teils, der benötigt wird, um die vollständigen Daten innerhalb eines kompletten Backup-Zyklus zu sichern. Bei der Wiederherstellung mit amanda kann, falls Indexzierung der Daten eingestellt wurde, bequem in den kompletten Datenbestand navigiert werden (ähnlich wie bei 'restore -i'). Dabei können Daten eines bestimmten Datums und von welchem Rechner angegeben werden. amanda teilt einem dabei mit, welche Bänder einzulegen sind und stellt sie wieder her. Installation/KonfigurationDie Installation/Konfiguration von 'Amanda' wird im Verlauf dieser Seite anhand eines praxisorientierten Beispiels mit drei Rechnern vorstellen. Das ist zunächst der 'Amanda'-Server mit den Sicherungsmedium (in diesem Bsp. der Rechner: 'tempelton' mit einen DAT-Laufwerk). Als Clients die gesichert werden sollen, sind das in diesem Beispiel das Linux-System (Rechner: 'joshua') und ein Windows XP-System (Rechner 'ovation'). Installation 'Amanda'-ServerUnter Debian-Linux kann der Server am einfachsten mittels 'apt-get install amanda-server amanda-common amanda-client' installiert werden, evtl. weitere Abhängigkeiten sollten aufgelöst werden. Dabei wird beim Aufsetzen eines 'Amanda'-Servers auch der 'Amanda'-Client benötigt. Als weitere vorbereitende Maßnahme ist die Datei '/etc/services' zu prüfen, ob die für 'Amanda' benötigten 'tcp'/'udp'-Ports auskommentiert sind:
'Amanda' nutzt für den Datenaustausch über das Netzwerk
standardmäßig die Ports: '10081', '10082' und '10083'.
'amandaidxd' und 'amidxtaped' sind Dienste, die den Zugriff auf die Kataloge und das Backup-Bandlaufwerk ermöglichen, 'amandad' ist der Backup-Client. Wichtig für den Netzwerkbetrieb ist die 'Amanda'-eigenen Authentifizierungsdateien '.amandahosts', die vergleichbar ist mit der './hosts'-Datei bei den 'r'-Programmen von Berkley . Die '.amandahosts'-Datei befindet sich im 'home'-Verzeichnis von Amanda (bei SuSE: /var/lib/amanda) und sollte als User: amanda (Kommando: su - amanda) angepasst werden.
In der .amandahost-Datei sind alle Rechner, die an der Sicherung unter amanda beteidigt sind, einzutragen. In jeder einzelnen Zeile ist der Rechnername in FQN-Notation und der berechtigte Benutzer anzugeben, dabei sollte als berechtigter Benutzer für jeden Rechner der User amanda und root eingetragen werden. In diesem Bsp. ist der Sicherungsserver: tempelton (oder auch localhost) und ein Linux-Client: joshua zu finden. Der Eingangs erwähnte Windows-Rechner: ovation benötigt keinen Eintrag, da er indirekt über den Sicherungsserver angesprochen wird. Konfiguration 'Amanda'-ServerAls nächstes gilt es die Konfigurationsdateien: amanda.conf anzupassen. Der Einfachheit halber möchte ich dieses anhand einer Minimalkonfiguration vorstellen und nur auf die wichtigsten Parameter eingehen. Eine detaillierte Beschreibung der Parameter ist der Dokumentation zu amanda zu entnehmen.
Alle Änderungen in der Konfigurationsdatei sind als Benutzer: amanda durchzuführen, die Parameter bzw. deklarierten Typen haben folgende Bedeutung:
Des weiteren folgen die deklarierten Typen für das Bandlaufwerk
(tapetype) und die Sicherungsmethoden (dumptype). Die tatsächlich zu sichernden Daten werden in der Konfigurationsdatei disklist konfiguriert, wobei die in 'amanda.conf' definierten Dumptypen verwendet werden. Hier die Einträge für die Sicherung des oben beschreibenen Bsp-Systems:
Die Spalten dieser Datei bestehen aus dem host-Namen, dem
Dateisystem (als Datei in /dev, vollständiger Gerätename oder Mountpunkt), dem
dumptyp und einem Spindel-Parameter. Letzterer kontrolliert, welche Backups auf
einem Host zur gleichen Zeit erfolgen können. Der Wert -1 besagt, dass dieser
Parameter ignoriert werden soll. Andere Werte definieren Backup-Gruppen für
einen Host. Amanda führt nur Backups derselben Gruppe gleichzeitig aus. Damit der Sicherungsserver auf dem Windows-Share Zugriff erhält, ist noch eine Datei: /etc/amandapass zu erstellen, in der die Zugriffsdaten wie Benutzer und Kennwort für das Share eingetragen werden.
In diesem Bsp. erhält amanda Zugriff auf das Share: //ovation/Daten mit dem Benutzer: linux und dem Kennwort: geheim. Die Datei sollte als Benutzer=amanda und Gruppe=disk angelegt werden, und nur über Leserechte (chmod 600). Amanda-Client Auch müssen die Clients, die an der Datensicherung mit amanda
teilnehmen, entsprechend vorbereitet werden.
Wie beim 'Amanda'-Server ist auch eine '.amandahosts' zu erstellen, in der die berechtigten Rechner eingetragen werden (vgl. Amanda-Server). Eigentlich sind das schon alle Maßnahmen die an einen Linux-Client durchgeführt werden sollten. Bei einen Windows-Client sieht die Vorbereitung noch einfacher aus, es ist lediglich nur eine Freigabe für den zu sichernden Bereich zu erstellen (vgl. Datensicherung im LAN). Datensicherung mit AmandaNachdem der Server und die Clients für die Datensicherung vorbereitet sind, kann nun mit amanda gearbeitet werden. Im folgenden möchte ich nur ein paar elementare Bsp. zur Handhabung von amanda geben. Die folgenden Bsp. sollen vielmehr das ordnungsgemäße Funktionieren der Konfiguration sicherstellen, für das detaillierte Umgehen mit amanda möchte ich auf die Dokumentation zum Programmpaket verweisen. Tapes labeln (amlabel)Bevor überhaupt eine Datensicherung mit 'Amanda' angestoßen werden kann, sind die Tapes zu 'labeln'. Das 'Labeln' der Tapes sollte als Benutzer: 'amanda' durchgeführt werden:
Entsprechend des Eintrags tapecycle in /etc/amanda/DailySet1/amanda.conf müssen die obigen Schritt für die weiteren Bänder wiederholt werden. Dazu ist lediglich eine Erhöhen der Nummerierung '01' fortlaufend nötig. Konfiguration testen (amcheck)Ein gutes Verfahren zum Testen der Konfiguration (Client und Server) und des Sicherungsmediums kann mit dem Programm: amcheck erfolgen, welches ebenfalls als Benutzer: amanda auszuführen ist.
Zunächst wird das Bandlaufwerk inkl. eingelegtem Band (ist der 'Label' des Bandes bezogen auf des 'Set' korrekt) geprüft. Anschließend wird die Erreichbarkeit der Clients überprüft. In diesem Bsp. wurden zwei Clients mit dem Ergebnis: '0 problems found' überprüft. Datensicherung anstoßen (amdump)Zum anstoßen der Datensicherung dient das Kommando: amdump. Von Hand angestoßen wird das Kommando ebenfalls unter dem User: amanda:
Nach jeder Sicherung schickt amanda einen Mailreport an den in
der amanda.conf selektierten User. Dieser enthält unter anderem Informationen
was gesichert wurde, bzw. was nicht gesichert werden konnte, wieviel Prozent des
Tapes benutzt wurden, mit welcher Durchsatzrate die Daten auf das Band
geschrieben wurden, und wie lange gesichert wurde. Wiederherstellen von Daten (amrecover) Zum Wiederherstellen Dateien eignet sich am besten das Tool:
amrecover. Das Tool bietet eine Benutzerschnittstelle, die auf Indexdaten
zugreift, welche für Dumptypen mit eingeschalteter Index-Option beim Backup
erstellt wurden (Option index bei define dumptype in der /etc/amanda.conf).
Wurde der Backup ohne Indizierung erstellt muss das Programm: amrestore genutzt
werden. Die Schnittstelle erlaubt eine bequeme Navigation durch die
verschiedenen Versionen von gesicherten Dateien und Verzeichnissen. Zu
wiederherstellende Einträge lassen sich selektieren und können anschließend aus
dem Programm heraus zurückgespielt werden.
Zunächst ist das Programm: amrecover als root auszuführen.
Danach erfolgt eine interaktive Shell, ähnlich wie beim ftp-Client. (Alle
folgenden Kommandos die eingegeben wurden, sind gelb markiert.) AnmerkungenUm eine kontinuierliche Datensicherung zu gewährleisten sollte auf jeden Fall die Ausführung zum Sichern in ein cron-Job für den Benutzer: amanda eingetragen werden. Ein Eintrag zu den obigen Bsp. könnet etwa so aussehen:
Bei diesem Eintrag wird von Montag bis Freitag jeden Tag die Datensicherung um 19:15 Uhr gestartet. Um die notwendigen Laufwerk- und Band-spezifischen Parameter herauszufinden kann das Tool: tapetype genutzt werden. Leider befindet sich das Programm bei einer Installation mittels Yast auf der Festplatte, sondern muss separat aus den Quellen von Amanda generiert werden. Nachdem das Programm vorliegt kann es wie folgt aufgerufen werden:
Bei der Nutzung des Programms ist darauf zu achten, dass eine evt. Hardware Kompression des Laufwerks abgeschaltet ist. Der Lauf des Programms kann einige Stunden an Zeit in Anspruch nehmen. Steht genügend Festplattenkapazität zur Verfügung sollte für amanda eine so genannte 'holdingdisk' deklariert werden. Eine 'holdingdisk' ist ein zugewiesener Bereich auf der Festplatte, der die zu schreibenden Daten zwischenspeichert, um den Durchsatz beim Schreiben des Bandes zu erhöhen. Außerdem ist sichergestellt, dass auch bei einem Laufwerkfehler die Daten gesichert werden, da das Backup zu einem späteren Zeitpunkt auf das Sicherungsmedium geschrieben werden kann. Weitere Infos
letzte Änderung: 08. Mai 2009 |
Copyright © 2004 Norbert Eusterholz |