Entwicklungsumgebung/Backup: Unterschied zwischen den Versionen

Aus Delixs
Zur Navigation springen Zur Suche springen
 
(9 dazwischenliegende Versionen von 3 Benutzern werden nicht angezeigt)
Zeile 1: Zeile 1:
__NOTOC__
__NOTOC__
{{Uberarbeiten}}
{{EditStatus|1|Dorn}}  
 


=== Regelmäßige Datensicherung in mehreren Generationen ===  
=== Regelmäßige Datensicherung in mehreren Generationen ===  
Zeile 22: Zeile 23:


  dpkg -i liblchown-perl_1.00-1_i386.deb  
  dpkg -i liblchown-perl_1.00-1_i386.deb  
oder:
aptitude install dh-make-perl
dh-make-perl --build --cpan lchown
dpkg -i liblchown-perl*.deb


Wenn die Datei mit Lynx direkt auf dem Server heruntergeladen wird, kann auch die Option installieren gewählt werden - dann entfällt der letzte Schritt.   
Wenn die Datei mit Lynx direkt auf dem Server heruntergeladen wird, kann auch die Option installieren gewählt werden - dann entfällt der letzte Schritt.   
Zeile 27: Zeile 36:
==== Einrichtung ====
==== Einrichtung ====


Zunächst wird der Speicherort für die Backups festgelegt. In der Regel handelt es sich um einen Datenträger der in ein Verzeichnis des Servers gemountet wird, hier in das Verzeichnis /mnt/backup/ z.B. mit dem Befehl
Zunächst wird der Speicherort für die Backups festgelegt. In der Regel handelt es sich um einen Datenträger der in ein Verzeichnis des Servers gemountet wird, hier in das Verzeichnis /backup/ z.B. mit dem Befehl


  mount /dev/sdxx /mnt/backup/
  mount /dev/sdxx /backup/


wobei das Verzeichnis /backup vorher angelegt werden muss mit mkdir /mnt/backup.
wobei das Verzeichnis /backup vorher angelegt werden muss mit mkdir /backup.


Die Steuerung von Rsnapshot erfolgt in der Datei ''/etc/rsnapshot.conf''. Nach dem üblichen Anlegen einer Sicherheitskopie kann die Datei bearbeitet werden mit:  
Die Steuerung von Rsnapshot erfolgt in der Datei ''/etc/rsnapshot.conf''. Nach dem üblichen Anlegen einer Sicherheitskopie kann die Datei bearbeitet werden mit:  
Zeile 37: Zeile 46:
  mcedit /etc/rsnapshot.conf  
  mcedit /etc/rsnapshot.conf  


Dabei ist zu beachten, dass immer ein Tabulator als Trenner verwendet werden muss!
Als erstes wird das Backupverzeichnis durch die Variable ''rsnapshot_root'' festgelegt
Als erstes wird das Backupverzeichnis durch die Variable ''rsnapshot_root'' festgelegt


  rsnapshot_root ''/mnt/backup/rsnapshot/''
  rsnapshot_root   ''/backup/''


Die gesicherten Dateien befinden in sich also zukünftig im Verzeichnis /mnt/backup/rsnapshot/.
Die gesicherten Dateien befinden in sich also zukünftig im Verzeichnis /mnt/backup/rsnapshot/.
Zeile 45: Zeile 55:
Wenn man auf ein Wechselmedium sichert ist dieses Verhalten eventuell nicht erwünscht. Vielmehr sollte hier das Programm mit einer Fehlermeldung abbrechen, wenn kein Medium gemountet ist. Dafür gibt es den Schalter
Wenn man auf ein Wechselmedium sichert ist dieses Verhalten eventuell nicht erwünscht. Vielmehr sollte hier das Programm mit einer Fehlermeldung abbrechen, wenn kein Medium gemountet ist. Dafür gibt es den Schalter


  no_create_root=1
  no_create_root   1


Standardmäßig ist er deaktiviert, also die Raute # entfernen und rsnapshot legt kein Verzeichnis an.
Standardmäßig ist er deaktiviert, also die Raute # entfernen und rsnapshot legt kein Verzeichnis an.
Zeile 81: Zeile 91:
kann die Konfiguration getestet werden.
kann die Konfiguration getestet werden.


Ein erster Backuplauf kann mit dem kleinsten aktivierten Intervall angestoßen werden:
Ein erster Backuplauf kann mit dem kleinsten aktivierten Intervall angestoßen werden, in unserem Beispiel also:


  rsnapshot daily
  rsnapshot daily


Treten Probleme auf so kann der Debuglevel heraufgesetzt werden.
Es muss mit dem kleinsten Intervall begonnen werden, danach kann das nächstgrößere Intervall ebenfalls manuell gestartet  werden.
Treten Probleme auf so kann der Debuglevel z.B. auf 5 heraufgesetzt werden, voreingestellt ist Level 3.


===== Regelmäßige Sicherungen =====
===== Regelmäßige Sicherungen =====
Zeile 91: Zeile 102:
Mit einem Cronjob werden die Backups zeitlich gesteuert. Mit crontab -e den editor aufrufen und z.B. folgende Zeilen ergänzen:
Mit einem Cronjob werden die Backups zeitlich gesteuert. Mit crontab -e den editor aufrufen und z.B. folgende Zeilen ergänzen:


  0 1 * * * rsnapshot daily
  0 1 * * * /usr/bin/rsnapshot daily
  0 3 * * 7 rsnapshot weekly
  0 3 * * 7 /usr/bin/rsnapshot weekly
  0 5 1 * * rsnapshot monthly   
  0 5 1 * * /usr/bin/rsnapshot monthly   


Täglich um 1 Uhr, wöchentlich jeden Sonntag um 3 Uhr und monatlich an jedem 1. um 5 Uhr wird ein Backup angelegt.
Täglich um 1 Uhr, wöchentlich jeden Sonntag um 3 Uhr und monatlich an jedem 1. um 5 Uhr wird ein Backup angelegt.
Zeile 111: Zeile 122:
wird der NFS-Server neu gestartet und gibt die exportierten Verzeichnisse an der Konsole aus.  
wird der NFS-Server neu gestartet und gibt die exportierten Verzeichnisse an der Konsole aus.  


Auf delixs muss das exportierte Verzeichnis noch gemountet werden mit dem Befehl
Auf delixs muss das exportierte Verzeichnis noch gemountet werden. Dafür wird das Verzeichnis /home/backup angelegt und anschließend mit dem Befehl eingebunden:


  mount -t nfs delixs:/backup/delixs /mnt/backup
  mount -t nfs delixs:/backup/delixs /home/backup


Um das Backupverzeichnis dauerhaft einzubinden ist ein entsprechender Eintrag in der Datei /etc/fstab nötig - im Beispiel hat der Backupserver die IP 192.168.1.5:
192.168.1.5:/backup/delixs /home/backup nfs auto,defaults    0      0


----
----
<div align="right">[[Installation:Entwicklungsumgebung|zurück]] | [[Hauptseite]]</div>
<div align="right">[[Installation:Entwicklungsumgebung|zurück]] | [[Hauptseite]]</div>
Reinhold Dorn 2009
[[Kategorie:DebianSqueeze]]

Aktuelle Version vom 28. März 2011, 19:10 Uhr


Diese Seite ist momentan eine Baustelle im Zustand: 1

Wird bearbeitet von: Dorn
Hilfe zum Bearbeitungsstatus: Hilfe:Status eines Artikels


Regelmäßige Datensicherung in mehreren Generationen

Für die Datensicherung in mehreren Generationen bieten sich Tools an, die auf rsync basieren. Durch das Setzen von Hardlinks anstelle von Dateikopien werden damit beliebig viele Backup-Generationen der Dateien platzsparend möglich - nur begrenzt durch den zur Verfügung stehenden Speicherplatz.

Die Sicherung erfolgt in ein frei zu wählendes Verzeichnis des Servers - jedes beschreibare Medium das sich mounten lässt kann also als Speicherort verwendet werden u.a. USB-Festplatten, interne Festplatten oder Freigaben auf anderen Rechnern (z.B. ein Backupserver.

Rsnapshot basiert u.a. auf rsync und wird von Debian unterstützt.

Installation

Die Installation erfolgt mit

aptitude install rsnapshot rsync

Ebenfalls benötigt wird das Modul liblchown-perl, das aktuell nicht in der stable-Version von Debian enthalten ist.

Das Paket kann hier heruntergeladen werden und wird installiert mit

dpkg -i liblchown-perl_1.00-1_i386.deb 

oder:

aptitude install dh-make-perl
dh-make-perl --build --cpan lchown
dpkg -i liblchown-perl*.deb


Wenn die Datei mit Lynx direkt auf dem Server heruntergeladen wird, kann auch die Option installieren gewählt werden - dann entfällt der letzte Schritt.

Einrichtung

Zunächst wird der Speicherort für die Backups festgelegt. In der Regel handelt es sich um einen Datenträger der in ein Verzeichnis des Servers gemountet wird, hier in das Verzeichnis /backup/ z.B. mit dem Befehl

mount /dev/sdxx /backup/

wobei das Verzeichnis /backup vorher angelegt werden muss mit mkdir /backup.

Die Steuerung von Rsnapshot erfolgt in der Datei /etc/rsnapshot.conf. Nach dem üblichen Anlegen einer Sicherheitskopie kann die Datei bearbeitet werden mit:

mcedit /etc/rsnapshot.conf 

Dabei ist zu beachten, dass immer ein Tabulator als Trenner verwendet werden muss! Als erstes wird das Backupverzeichnis durch die Variable rsnapshot_root festgelegt

rsnapshot_root    /backup/

Die gesicherten Dateien befinden in sich also zukünftig im Verzeichnis /mnt/backup/rsnapshot/. Wenn das Verzeichnis nicht existiert, legt rsnapshot es beim ersten Durchlauf an. Wenn man auf ein Wechselmedium sichert ist dieses Verhalten eventuell nicht erwünscht. Vielmehr sollte hier das Programm mit einer Fehlermeldung abbrechen, wenn kein Medium gemountet ist. Dafür gibt es den Schalter

no_create_root    1

Standardmäßig ist er deaktiviert, also die Raute # entfernen und rsnapshot legt kein Verzeichnis an.

Sicherungsintervalle

Als nächstes werden die Backupintervalle (wie lange die Sicherungen aufbewahrt werden) festgelegt. Es können stündliche, tägliche, wöchentliche und monatliche Intervalle eingestellt werden:

#interval       hourly  6
interval        daily   7
interval        weekly  4
interval        monthly 6

Im Beispiel werden tägliche Backups für 7 Tage, wöchentliche Backups für 4 Wochen und monatliche Backups für 6 Monate aufbewahrt. Stündliche Backups sind auskommentiert, werden also nicht durchgeführt - machen bei einem Schulserver auch nicht unbedingt Sinn. Die Reihenfolge der Intervalle ist unbedingt einzuhalten.

Zu sichernde Verzeichnisse

Die Verzeichnisse die gesichert werden sollen werden wie folgt angegeben:

# LOCALHOST
backup  /home/          localhost/
backup  /etc/           localhost/
backup  /usr/           localhost/
backup  /var/           localhost/
backup  /bin/           localhost/
backup  /boot/          localhost/
backup  /lib/           localhost/
backup  /root/          localhost/
backup  /sbin/          localhost/

localhost bezeichnet den zu sichernden Server, im Beispiel wird eine annähernde Komplettsicherung des Servers erstellt. Mit

rsnapshot configtest

kann die Konfiguration getestet werden.

Ein erster Backuplauf kann mit dem kleinsten aktivierten Intervall angestoßen werden, in unserem Beispiel also:

rsnapshot daily

Es muss mit dem kleinsten Intervall begonnen werden, danach kann das nächstgrößere Intervall ebenfalls manuell gestartet werden. Treten Probleme auf so kann der Debuglevel z.B. auf 5 heraufgesetzt werden, voreingestellt ist Level 3.

Regelmäßige Sicherungen

Mit einem Cronjob werden die Backups zeitlich gesteuert. Mit crontab -e den editor aufrufen und z.B. folgende Zeilen ergänzen:

0 1 * * * /usr/bin/rsnapshot daily
0 3 * * 7 /usr/bin/rsnapshot weekly
0 5 1 * * /usr/bin/rsnapshot monthly  

Täglich um 1 Uhr, wöchentlich jeden Sonntag um 3 Uhr und monatlich an jedem 1. um 5 Uhr wird ein Backup angelegt.

Sichern auf einen Backupserver (entfernter Rechner)

Hierzu muss auf beiden Servern NFS eingerichtet sein s.Link-Text Auf dem Backupserver wird das Backupverzeichnis in die Datei /etc/exports eingetragen

/backup/delixs      delixs(rw,sync,no_root_squash)

Die Sicherungen landen auf dem Backupserver im Verzeichnis /backup/delixs, gesichert wird der Server mit dem Namen delixs - hier kann auch die IP-Adresse stehen. Mit

service nfs-kernel-server restart

wird der NFS-Server neu gestartet und gibt die exportierten Verzeichnisse an der Konsole aus.

Auf delixs muss das exportierte Verzeichnis noch gemountet werden. Dafür wird das Verzeichnis /home/backup angelegt und anschließend mit dem Befehl eingebunden:

mount -t nfs delixs:/backup/delixs /home/backup

Um das Backupverzeichnis dauerhaft einzubinden ist ein entsprechender Eintrag in der Datei /etc/fstab nötig - im Beispiel hat der Backupserver die IP 192.168.1.5:

192.168.1.5:/backup/delixs /home/backup nfs auto,defaults    0       0


zurück | Hauptseite

Reinhold Dorn 2009