Neues in der Kategorie backup

Bisher führte ich die Backups immer manuell aus: Platten gemounted, Grsync gestartet und beim voreingestellten Profil auf Ausführen gedrückt. Von einer gewissen Regelmäßigkeit war da nicht zu sprechen.

Es wäre möglich, das in Linux eingebaute cron zu nutzen. Für einen Desktop-Rechner ist der Cron-Job jedoch auch keine Alternative. Zur eingestellten Update-Zeit ist der Rechner möglicherweise nur an 1 von 7 Tagen wirklich eingeschaltet.

Hier kommt anacron ins Spiel. Mit anacron ist es möglich, mit einer gewissen Verzögerung nach dem Programmaufruf eine Aktion auszuführen. Den Programmaufruf von anacron wollte ich idealerweise nach dem Einloggen auslösen, sodass das Backup nach ca. 5 Minuten startet. Das Backupscript selbst wird dann von anacron aufgerufen.

Nachfolgend werden die beiden Stufen "Programmaufruf über anacron" und "Backupscript" beschrieben.

Sollte man jedoch wünschen, dass die externe Platte das Backup selbst ausführt, macht sich autorun ganz gut. Beim Einstecken des USB-Devices kann das Backup ausgelöst werden.

Umgekehrt ist es auch ganz praktisch, das Backup eines USB-Sticks auf eine lokale Platte zu starten

Die sehr praktische Backup-Funktion über autorun erläutere ich im dritten Abschnitt.


Terminaleingaben wie folgt: (# = Kommentare, $ = Terminal-Eingabezeilen, alles andere = Terminal-Ausgaben)


1.) Programmaufruf über anacron


### anacron installieren (falls noch nicht vorhanden)
$ sudo apt-get install anacron
### anacron für user "test" konfigurieren (s. auch INFO)
$ sudo groupadd anacron
$ sudo adduser test anacron
$ sudo chown root.anacron /var/spool/anacron
$ sudo chmod g+w /var/spool/anacron
### info-files anlegen (spool)
$ touch /var/spool/anacron/test.anacron.daily
$ touch /var/spool/anacron/test.anacron.weekly
$ touch /var/spool/anacron/test.anacron.monthly
### Rechte vergeben
$ chown root.anacron /var/spool/anacron/test.*
$ sudo chmod g+w /var/spool/anacron/test.*
$ sudo chmod g+r /var/spool/anacron/test.*
### INFO das Spool-Verzeichnis/Dateien des Users kann auch ins $Home verlegt werden
### hierzu muss der anacron-Start (s. unten) wie folgt erfolgen:
### /usr/sbin/anacron -s -S $HOME/.etc/anacron_spool/ -t $HOME/.etc/anacrontab
### Das selbst gewählte Verzeichnis bitte vorher anlegen!
### Für diesen Fall sind nur die nachfolgenden Arbeitsschritte notwendig:
### ---------------------------------------------------------------------------------------------------
### test's anacron im Home-Verzeichnis verankern (Verzeichnis ~/.etc nur beispielhaft benutze ich aber so)
$ mkdir $HOME/.etc/anacron.daily
$ mkdir $HOME/.etc/anacron.weekly
$ mkdir $HOME/.etc/anacron.monthly
### anacrontab anlegen
$ touch $HOME/.etc/anacrontab
### anacrontab bearbeiten: mit mcedit ,auch gedit etc. möglich
$ mcedit $HOME/.etc/anacrontab
________________ INHALT  $HOME/.etc/anacrontab______________
# See anacron(8) and anacrontab(5) for details.

SHELL=/bin/sh
PATH=/sbin:/bin:/usr/sbin:/usr/bin

# period  delay  job-identifier  command
# 5 min daily, 10 min weekly, 15 min monthly
1       5       test.anacron.daily    nice run-parts --report $HOME/.etc/anacron.daily
7      10       test.anacron.weekly   nice run-parts --report $HOME/.etc/anacron.weekly
30     15       test.anacron.monthly  nice run-parts --report $HOME/.etc/anacron.monthly
_______________ENDE INHALT $HOME/.etc/anacrontab ___________


Script-Dateien, die man in den .daily/.weekly/.monthly-Verzeichnissen ablegt werden nach dem Start von anacron jeweils täglich/wöchentlich/monatlich gestartet.

Erst nach dem eigentlichen Start von anacron wird das Backup gestartet.

  • Der Start kann über eine crontab-Eintrag stattfinden:
### crontab editieren
$ crontab -e
_______________ eintragen ______________________
@reboot    /usr/sbin/anacron -t $HOME/.etc/anacrontab
______________________________________________

  • ODER: anacron nach Login über "Startprogramme" starten
Bildschirmfoto-Startprogrammeinstellungen.png

Der Eintrag wird über "hinzufügen" erstellt:
Bildschirmfoto-Startprogramm bearbeiten.png

Der folgende Eintrag startet anacron des Users "test" nach dem Login:

/usr/sbin/anacron -t /home/test/.etc/anacrontab


2.) Backupscript

Welche Dateien lege ich jetzt in meine anacron.daily/.weekly/.monthly-Verzeichnisse?

Ein Problem ist manchmal schon, die Platte ohne admin-Rechte (root) zu mounten (einhängen). Das folgende Beispiel hängt die Platte mit dem Label "raidstor" ein und sichert das Home-Verzeichnis des users "test" komplett in das Unterverzeichnis BACKUP/home der Platte. (Der Username test muss natürlich ersetzt werden)

HINWEIS: Ich habe das nur mit Linux-Dateisystemen benutzt (ext2/ext3/ext4). Für NTFS-Platten könnten zusätzliche Optionen für rsync notwendig werden.

Benötigte Pakete: libnotify-bin gvfs-bin
# Pakete installieren
$ sudo apt-get install libnotify-bin gvfs-bin

______________ file: $HOME/.etc/anacron.daily/localbackup_______________
#!/bin/sh

startmessage='Es wird eine Sicherung auf raidstor durchgeführt.'
midmessage='Der Computer darf während dieses Vorgangs nicht heruntergefahren werden!'
finishmessage='Die Sicherung ist abgeschlossen!'

notify-send -u normal -t 3 -i /usr/share/icons/grsync.png "$startmessage"
#MOUNTEN
gvfs-mount -d `readlink -f /dev/disk/by-label/raidstor`
sleep 2
notify-send -u normal -t 3 -i /usr/share/icons/gnome/scalable/status/dialog-warning.svg "$midmessage"
##BACKUP ausführen
rsync -ax --delete --delete-excluded --exclude=.gksu.lock --exclude=.thumbnails /home/test /media/raidstor/BACKUP/home
##BACKUP beenden
notify-send -u normal -t 3 -i /usr/share/icons/gnome/scalable/emblems/emblem-default.svg "$finishmessage"
______________________________________________________________________________________________


3.) Sicherung mittels autorun: Beispiel extern -> local


Das autorun-Script kann auf der zu externen Platte selbst gespeichert werden und mittels autostart wird das Backup ausgelöst. Hervorragend für USB-Sticks oder externe Festplatten.

Das Backup startet im Beispiel von einer externen (USB-)Platte KEYLINUX und sichert auf raidstor. Der umgekehrte Fall ist sicherlich auch möglich. Hierzu muss das Script nach dem Beispiel aus 2.) modifiziert werden.

Schreibrechte des Users auf dem Ziel bzw. Leserechte auf dem Stick sind von Vorteil!

HINWEIS: Ich habe das nur mit Linux-Dateisystemen benutzt (ext2/ext3/ext4). Für NTFS-Platten könnten zusätzliche Optionen für rsync notwendig werden.

Benötigte Pakete: libnotify-bin gvfs-bin
# Pakete installieren
$ sudo apt-get install libnotify-bin gvfs-bin

### Platte anstecken und per Nautilus einhängen
(#manuell einhängen)$ gvfs-mount -d `readlink -f /dev/disk/by-label/KEYLINUX`
$ cd /media/KEYLINUX
### Script-Datei anlegen (mit Users-Rechten, für root sudo benutzen -> $ sudo touch .autorun)
### Alternativ geht auch autorun.sh oder autorun (Vorteil .autorun ist versteckt)
$ touch .autorun
### Start-Rechte vergeben für user
$ chmod u+x .autorun
### alternativ: Start-Rechte vergeben für Gruppe
$ chmod g+x .autorun
### alternativ: Start-Rechte vergeben für alle
$ chmod a+x .autorun
### Script-Datei mir mcedit bearbeiten (oder auch Editoren wie "gedit" etc. möglich)
$ mcedit .autorun
__________________________ file: .autorun ________________________________
#!/bin/sh
startmessage='Sicherung von KEYLINUX auf raidstor wird durchgeführt.'
midmessage='KEYLINUX darf während dieses Vorgangs nicht getrennt werden!'
finishmessage='Die Sicherung von KEYLINUX ist abgeschlossen!'

notify-send -u normal -t 3 -i /usr/share/icons/grsync.png "$startmessage"
#raidstor MOUNTEN
gvfs-mount -d `readlink -f /dev/disk/by-label/raidstor`
sleep 2
notify-send -u normal -t 3 -i /usr/share/icons/gnome/scalable/status/dialog-warning.svg "$midmessage"
##BACKUP als user ausführen (nur mit entsprechenden Rechten)
rsync -ax --delete /media/KEYLINUX /media/raidstor/BACKUP
##BACKUP als root ausführen (Zeile ändern)
## gksudo "rsync -ax --delete /media/KEYLINUX /media/raidstor/BACKUP"
##BACKUP beenden
notify-send -u normal -t 3 -i /usr/share/icons/gnome/scalable/emblems/emblem-default.svg "$finishmessage"
_____________________________________________________________________

Beim Anstecken des USB-Devices erscheint nun folgende Nachricht:

Bildschirmfoto-KEYLINUX.png

Nach dem Klick auf OK, wird das Vertrauen des Scriptes eingefordert und los gehts...

Es war einmal wieder soweit: Ich wollte ein Windows-Backup machen.

Externe Platte mit NTFS angeschlossen und aufs Knöpfchen gedrückt -> "Systemsteuerung\Alle Systemsteuerungselemente\Sichern und Wiederherstellen" -> "Jetzt sichern"

Oh Schreck was nun! Ein Fehler: Fehlercode 0x81000019, ohne aufschlussreiche Erklärung.
(Hier ein Bild des reproduzierten Fehlers: Lösung unten.)

Fehlercode: 0x81000019Am Betriebssystem hatte ich nix verändert, benutze das Windows doch nur zum Spielen. Die Suche im Netz war nahezu erfolglos. Viele Foren mit massig Einträgen halfen nicht weiter. Speicherplatz frei machen half nix, hatte noch 100GB frei, warum auch! Beim Umstellen des Backup "ohne Systemabbild" gab's einen anderen Fehler (0x80070002). Ein Plattentest zeigte keine Fehler und brachte keine Besserung.

Ich fand nur: Die Dienste VSS und SPP sind irgendwie Schuld... naja das war nix Neues.

Meine Ereignisanzeige und die Fehlermeldung hatten mir das auch schon verraten:

Ereignisanzeige Backup Error

Die vier Ereignisse künden vom Backup-Error um 21:51:22.

Die Ausgaben der Ereignisse habe ich hier einmal aufgeführt:

1.) Event 8193


Protokollname: Application
Quelle:        VSS
Datum:         10.11.2010 21:51:25
Ereignis-ID:   8193
Aufgabenkategorie:Keine
Ebene:         Fehler
Schlüsselwörter:Klassisch
Benutzer:      Nicht zutreffend
Computer:      Powerplant.tobis-home.de
Beschreibung:
Volumeschattenkopie-Dienstfehler: Beim Aufrufen von Routine "IVssAsrWriterBackup::GetAsrMetadata" ist ein unerwarteter Fehler aufgetreten. hr = 0x80042416, Die Systempartition (als "aktiv" markierte Partition) ist versteckt oder enthält ein unbekanntes Dateisystem. Diese Konfiguration wird für Sicherungen nicht unterstützt.
.

Vorgang:
   PrepareForBackup-Ereignis

Kontext:
   Ausführungskontext: ASR Writer
   Ausführungskontext: Writer
   Generatorklassen-ID: {be000cbe-11fe-4426-9c58-531aa6355fc4}
   Generatorname: ASR Writer
   Generatorinstanz-ID: {2b66ed38-cb27-4d0c-ab43-e627131ed2ca}

Fehlerspezifische Details:
   ASR Writer: Die Systempartition (als "aktiv" markierte Partition) ist versteckt oder enthält ein unbekanntes Dateisystem. Diese Konfiguration wird für Sicherungen nicht unterstützt. (0x80042416)

2.) Event 12290

Protokollname: Application
Quelle:        VSS
Datum:         10.11.2010 21:51:25
Ereignis-ID:   12290
Aufgabenkategorie:Keine
Ebene:         Warnung
Schlüsselwörter:Klassisch
Benutzer:      Nicht zutreffend
Computer:      Powerplant.tobis-home.de
Beschreibung:
Volumeschattenkopie-Dienstwarnung: ASR writer Error 0x80042416. hr = 0x00000000, Der Vorgang wurde erfolgreich beendet.
.

Vorgang:
   PrepareForBackup-Ereignis

Kontext:
   Ausführungskontext: ASR Writer
   Ausführungskontext: Writer
   Generatorklassen-ID: {be000cbe-11fe-4426-9c58-531aa6355fc4}
   Generatorname: ASR Writer
   Generatorinstanz-ID: {2b66ed38-cb27-4d0c-ab43-e627131ed2ca}

Fehlerspezifische Details:
   ASR Writer: Die Systempartition (als "aktiv" markierte Partition) ist versteckt oder enthält ein unbekanntes Dateisystem. Diese Konfiguration wird für Sicherungen nicht unterstützt. (0x80042416)

3.) Event 16387


Protokollname: Application
Quelle:        SPP
Datum:         10.11.2010 21:51:25
Ereignis-ID:   16387
Aufgabenkategorie:Keine
Ebene:         Fehler
Schlüsselwörter:Klassisch
Benutzer:      Nicht zutreffend
Computer:      Powerplant.tobis-home.de
Beschreibung:
Fehler beim Erstellen von Schattenkopien, da ASR Writer einen Fehler gemeldet hat.  Weitere Informationen: Die Systempartition (als "aktiv" markierte Partition) ist versteckt oder enthält ein unbekanntes Dateisystem. Diese Konfiguration wird für Sicherungen nicht unterstützt. (0x80042416).

4.) Event 4100 (Windows Backup)

Protokollname: Application
Quelle:        Windows Backup
Datum:         10.11.2010 21:51:25
Ereignis-ID:   4100
Aufgabenkategorie:Keine
Ebene:         Fehler
Schlüsselwörter:Klassisch
Benutzer:      Nicht zutreffend
Computer:      Powerplant.tobis-home.de
Beschreibung:
Die Sicherung wurde nicht erfolgreich abgeschlossen, da eine Schattenkopie nicht erstellt werden konnte. Löschen Sie auf dem zu sichernden Laufwerk nicht benötigte Dateien, um Speicherplatz freizugeben, und wiederholen Sie den Vorgang.


Lösung:

Windows ist nur mein Zweit-Betriebssystem, daher läuft GRUB als Bootloader. Da ich kürzlich eine neue Festplatte eingebaut hatte, benutze ich nun die Neue als Bootlaufwerk. Der GRUB musste auch mit umziehen.

Nun ist es so, dass die neue Platte (SSD) im BIOS als 1. Bootplatte eingerichtet ist.
Windows und die Partition mit dem Windows-Bootloader sind auf dem "alten" RAID nur in zweiter Reihenfolge.

Das Backupsystem scheint also mit der Umstellung der 1. Bootplatte im BIOS ein Problem zu haben. Die Windows-System-Platte (bzw. Windows-Bootloader) müssen im BIOS an erster Bootreihenfolge stehen.

Ein Versuch gab mir Recht: Kurzerhand stellte ich die Windows-Platte im BIOS als HDD1 ein. Backup angeworfen: Läuft wieder ohne Fehler!

Glücklicherweise hatte ich die alte GRUB-Partition auf der Windows-Platte nicht gelöscht. GRUB und Windows-Backup schließen sich also nicht aus. Der GRUB muss nur auf dem gleiche Laufwerk wie der Windows-Bootloader (vielleicht auch Windows-System) liegen.

So, inzwischen ist das Backup beinahe fertig. Und ich überlege mir, ob ich meine alte GRUB-Partition auf dem Windows-RAID nicht wieder standardmäßig wegen den Win7-Backup-Bugs in Benuzung nehme.

Update: Wer GRUB (Version 1) benutzt, kann in der menu.lst den Eintrag "makeactive" ergänzen und schon klappt's wieder (s. auch Kommentare). Bei Grub2 ist das etwas schwieriger. Hier muss vor den chainload-Eintrag ein "parttool hd0,3 boot+" (in dem Fall erste Platte (0), dritte Partition (3)).

Über dieses Archiv

Diese Seite enthält aktuelle Einträge der Kategorie backup.

linux server ist die nächste Kategorie.

Aktuelle Einträge finden Sie auf der Startseite, alle Einträge in den Archiven.

Archiv

Mai 2014

So Mo Di Mi Do Fr Sa
        1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30 31

Aktuelle Kommentare

  • petruschka: halooo, wer hatt auch was sinn volles, für windows 7 weiterlesen
  • Tobias Hesse: Danke für Eure Kommentare, das mit dem "makeactive" ist 'ne weiterlesen
  • Jürgen: DANKE... Nach vielen erfolglosen Versuchen und Suchem im Netz bin weiterlesen
  • Anonym: Danke für die Info! Ich bin auch über das Problem weiterlesen
  • Patrick: Hi Tobi, danke für deinen Kommentar. Über deine Seite war weiterlesen
Creative Commons License
Dieses Blog steht unter einer Creative Commons-Lizenz.