Thread zur Backup-FAQ

cwasmer schrieb:
Hallo!

Danke erstmal an sheep für die tolle Anleitung!
Eine Frage stellt sich mir jetzt aber doch noch: Ist es möglich bootfähige, inkrementelle backups zu machen? Ich würde nämlich gerne mein ganzes System so sichern...
Kann ich das aktuellste Backup ohne Unterverzeichnis speichern und dann von dem Volume booten?
Das wäre denkbar. Du müsstest einfach als Quelle die Festplatte angeben (Verzeichnis "/"). Danach könntest du die aktuelle Version auf eine leere Partition laden und das System bootbar machen (mit dem bless-Befehl, siehe den entsprechenden Abschnitt in der FAQ). Du solltest allerdings die Besonderheiten für einen Clon beachten, man muss gewisse Verzeichnisse, wie etwa /dev, auslassen, damit es keine Komplikationen gibt.

Auf die Idee bin ich jetzt selbst noch nicht gekommen, gar nicht dumm ;).
 
Hallo!
Erstmal möchte ich mich auch für die Anleitung bedanken!!

Ich habe allerdings 3 Fragen:

1. Wenn der Rechner zur Zeit, in der der Cronjob läuft, nicht an ist, wird der danach auch nicht mehr ausgeführt. Gibt es da eine Möglichkeit, es so einzustellen, dass der Cronjob beim nächstmöglichen Termin nach Ablauf gestartet wird?

2. Inkrementelles Backup: Dort besteht ja das erste Backup aus allen "echten" Dateien, ohne Hardlinks. Die weiteren Backups beinhalten nur die Änderungen + Hardlinks zu allen anderen Dateien.
Was passiert, wenn die Anzahl an eingestellten Backups (bei mir 5) durchgelaufen ist? Wo wird dann das nächste Backup gespeichert? Und in welcher Form (Hardlinks, oder wieder ein "echtes" komplett-Backup)

3. Wenn ich wieder Dateien zurücksichern möchte, kann ich da auch die Hardlinks benutzen, und er kopiert mir dann die wirkliche Datei?

Besten Dank schonmal...
 
pd666 schrieb:
1. Wenn der Rechner zur Zeit, in der der Cronjob läuft, nicht an ist, wird der danach auch nicht mehr ausgeführt. Gibt es da eine Möglichkeit, es so einzustellen, dass der Cronjob beim nächstmöglichen Termin nach Ablauf gestartet wird?
Dafür habe ich leider momentan keine Patentlösung auf Lager - es gibt glaube ich eine modifizierte Version von Cron, die hierzu in der Lage ist, da müsstest du mal googlen.

2. Inkrementelles Backup: Dort besteht ja das erste Backup aus allen "echten" Dateien, ohne Hardlinks. Die weiteren Backups beinhalten nur die Änderungen + Hardlinks zu allen anderen Dateien.
Was passiert, wenn die Anzahl an eingestellten Backups (bei mir 5) durchgelaufen ist? Wo wird dann das nächste Backup gespeichert? Und in welcher Form (Hardlinks, oder wieder ein "echtes" komplett-Backup)
Beim 6. und jedem weiteren Durchgang wird das jeweils älteste (Nr. 5) Backup gelöscht. Die übrigen vier werden "nach hinten verschoben" und das neueste ist dann die Nummer eins. Zu den Hardlinks musst du verstehen, dass dies keine Verknüpfungen sind, sondern ein ganz anderes Konzept - es lässt sich nicht sagen, dass das eine das Original und das andere der Hardlink sei, es sind beides (bzw. alle) Dateien, die auf dieselben Daten verweisen. Erst wenn beide (bzw. alle) gelöscht werden, gehen die eigentlichen Daten verloren und der Speicherplatz wird freigegeben.

3. Wenn ich wieder Dateien zurücksichern möchte, kann ich da auch die Hardlinks benutzen, und er kopiert mir dann die wirkliche Datei?
Genau so geht das, siehe Frage 2.
 
Sozusagen sind alle Dateien, die Du im Finder siehst Hardlinks auf die Festplatte - nur gibt es normal davon pro Datei nur einen (oder verstehe ich das jetzt falsch?). Im Finder sieht man in jedem Backup alle Dateien, obwohl viele davon nur ein mal auf der Fetplatte gespeichert sind...
 
cwasmer schrieb:
Sozusagen sind alle Dateien, die Du im Finder siehst Hardlinks auf die Festplatte - nur gibt es normal davon pro Datei nur einen (oder verstehe ich das jetzt falsch?). Im Finder sieht man in jedem Backup alle Dateien, obwohl viele davon nur ein mal auf der Fetplatte gespeichert sind...
Schöne Erklärung, so habe ich das jedenfalls auch verstanden (bin ja auch kein Informatiker ;)).

Wikipedia scheint es auch so zu sehen:
http://de.wikipedia.org/wiki/Hardlink
 
Bestätigung gesucht

Hallo. Ich möchte mit Sheeps Anleitung versuchen, mein System, welches bootfähig auf einer externen FW-Platte lagert, wieder zurück auf mein Notebook bringen.
Im Moment existiert auch nur dieses eine bootfähige System, wo auch das Homeverzeichnis liegen sollte.

Falls ihr Euch wundert, warum ich seinen Code hier poste, dann lautet meine Antwort, daß ich dies auf Sheeps Vorschlag hin tue.

Hier der Text für die backup-Datei:

Code:

#!/bin/sh

#Variablen fuer die Pfade
declare quelle="/"
declare ziel="/Volumes/Macintosh\ HD"

#Log schreiben (Anfangszeit)
/bin/echo "System-Clon begonnen um:" >> $ziel/backup.log
/bin/date >> $ziel/backup.log

#Clon anfertigen und Vorgang protokollieren
/usr/bin/time /usr/bin/rsync -avE --delete --exclude-from /backup_excludes.txt $* $quelle $ziel/ > $ziel/protokoll.log

#Volumen bootbar machen
bless -folder $ziel/System/Library/CoreServices
#Log schreiben (Endzeit)
/bin/echo "System-Clon beendet um:" >> $ziel/backup.log
/bin/date >> $ziel/backup.log
/bin/echo "--------------------------------------" >>$ziel/backup.log

Backup_Exclude sieht so aus:

Code:

/tmp/*
/proc
/Network/*
/Volumes/*
/cores/*
*/.Trash
/dev/*
/afs/*
/automount/*
/private/tmp/*
/private/var/run/*
/private/var/spool/postfix/*

/Volumes/Silverstar/Backup\ Data\ 060808/*
#dieser Ordner inkl aller Unterordner soll ebenfalls nicht mitkopiert
#werden, deshalb das * ?
Stimmt das für den "Backup Data" - Ordner?

Das Homeverzeichnis wird doch, egal auf welcher Platte es liegt, doch immer mit "/" angegeben, also müßte ich doch nur als Ziel meine eigentliche interne Notebook-Festplatte "Macintosh HD" angeben (siehe oben in der ersten Datei)?
Die Daten auf der externen Platte werden nicht gelöscht? Ich weiß ja nicht, ob es funktioniert, also sollten diese Daten lieber noch für den Notfall erhalten bleiben.
Es wäre sehr nett, wenn jemand sich diese Zeilen oben anschauen könnte, und sie absegnen könnte. Wäre grandios.
Gruß
Blue
 
Zuletzt bearbeitet:
Das sieht gut aus.

Dass das gesamte System von der externen Festplatte unter / gemountet wird, hast du richtig erkannt, die Pfade stimmen also so.

Wo ist allerdings dieser auszuschliessende Ordner "Backup Data 060808" her bzw. wo liegt dieser genau? Wenn ich das richtig deute, ist er auf der externen Festplatte, von der du bootest? Sollte dies so sein, kannst du ihn ebenfalls mit "/Backup\ Data\ 060808" direkt angeben, da er ja auch unter / gemountet wurde.

Gelöscht wird übrigens auf der Externen nichts, da kannst du beruhigt sein. Die Interne solltest du vorher natürlich formatieren.
 
hi, ich finde deine Anleitung zum inkrementellen Backup total genial und habe schon seit langer Zeit sowas gesucht.

Mein Problem: beim Aussführen des Skripts bekomme ich folgende Fehlermeldung für alle Dateien:

cpio: Unable to set file uid/gid of ../backup.1/./Studienbewerbung <Operation not supported>

rsync: chgrp "/Volumes/public/Backup/backup.0/Studienbewerbung" failed: Operation not supported (45)


Was habe ich denn falsch gemacht? Habe eigentlich alles streng nach der Anleitung gemacht...

Danke schon mal im Voraus

Edit: Trotz dieser Fehlermeldung kopiert er alle Dateien richtig.
 
Zuletzt bearbeitet:
Brosch schrieb:
cpio: Unable to set file uid/gid of ../backup.1/./Studienbewerbung <Operation not supported>
Dieses "/./" ist sinnfrei (ein Verzeichnis, das einfach "." heisst, kann man gar nicht anlegen) und ich bin ziemlich sicher, dass da der Hund begraben liegt. Allerdings ist mir schleierhaft, wie diese Konstruktion entstanden ist - hast du vielleicht bei Quelle oder Ziel einen Tippfehler?
 
Mein Quellverzeichnis ist /users/Dima/Documents/test
Zielverzeichnis liegt auf einer externen Netzwerkfestplate (Synology Diskstation; DS_Store) /volumes/public/Backup

Und im Quellverzeichnis liegt nur eine Datei: Druckertreiber für meinen Canon Drucker.

rsync: chgrp "/Volumes/public/Backup/backup.0/." failed: Operation not supported (45)
rsync: chgrp "/Volumes/public/Backup/backup.0/..DS_Store.Mg65HL" failed: Operation not supported (45)
rsync: chgrp "/Volumes/public/Backup/backup.0/.._.DS_Store.eMNiFt" failed: Operation not supported (45)
rsync: chgrp "/Volumes/public/Backup/backup.0/.canonip4200416.dmg.kdOQng" failed: Operation not supported (45)
rsync: chgrp "/Volumes/public/Backup/backup.0/.._canonip4200416.dmg.hpaiNS" failed: Operation not supported (45)
rsync: chgrp "/Volumes/public/Backup/backup.0/." failed: Operation not supported (45)
rsync error: some files could not be transferred (code 23) at /SourceCache/rsync/rsync-24/rsync/main.c(717)


Aber dennoch macht er die Sicherung von allen Dateien...


# Zu sicherndes Verzeichnis (z.B. /Users/):
a="/Users/Dima/Documents/test/"

# Verzeichnis bzw. Volume, in dem die Backups gespeicher werden sollen (z.B. /Volumes/Backup):
b="/Volumes/public/Backup/"

# Anzahl zu sichernde Versionen (z.B. 5; das Minimum ist 2!):
c=5
 
Ach so, ich dachte, der Vorgang bricht ab.

In diesem Fall brauchst du dir keine Sorgen zu machen :). Ein paar Fehlermeldungen bekommt man eigentlich ohnehin fast immer, könnte mit falschen Berechtigungen oder ungültigen Namen o.ä. zusammen hängen, so ganz sicher bin ich mir da auch nicht ;).
 
vielleicht hört es sich für euch zu simpel an, aber kann man so ein Script in eine Ordneraktion einbinden? So dass wenn man eine Datei im Ordner erstellt automatisch ein Backup durchgeführt wird. Wenn ja dann bitte ich um eine kurze Anleitung.

MFG Brosch
 
habe das Programm getestet und bin auf den folgenden Fehler gestoßen:
Wenn ich das Quellverzeichnis, mit einer Textdatei drin, sichere, verläuft alles super(die gesicherte Dateien befinden sich dann im Backup.0 Ordner.) Wenn ich aber dann die Textdatei im Quelverzeichnis ändere und wieder das Programm ausführe, dann wird die geänderte Textdatei wieder in den Backup.0 ordner kopiert. !!!Backup.1 Ordner verschwindet aber!!! Habe also die originale Datei nciht mehr.
Ich hoffe das wurde nciht schon mal vorher gepostet. Konnte noch jemand von euch dieses Verhalten beobachten?
 
Brosch schrieb:
Wenn ich aber dann die Textdatei im Quelverzeichnis ändere und wieder das Programm ausführe, dann wird die geänderte Textdatei wieder in den Backup.0 ordner kopiert. !!!Backup.1 Ordner verschwindet aber!!! Habe also die originale Datei nciht mehr.
Ja wie jetzt - verschwindet der Ordner Backup.1 als Ganzes oder die entsprechende Datei da drin?

Solches habe ich bisher jedenfalls nicht beobachtet. Fehler kann es selbstverständlich immer haben und ich bin ja froh, wenn die gemeldet werden :). Allerdings kann ich mir dieses Verhalten fast nicht vorstellen, da ja Hardlinks verwendet werden.
 
Ich denke, er meint, dass eine Datei mit identischem Namen wie eine andere in früheren Backups diese alten Versionen überschreibt, d.h.

Backup gestern: datei.txt (Inhalt 1)

"datei.txt" überschreiben (Inhalt 2)

Backup heute: datei.txt (Inhalt 2)
Daraufhin enthält das Backup von gestern: datei.txt (inhalt 2) und nicht (Inhalt 1), wie es sin sollte.

Mir ist dieser Fehler aber noch nie aufgefallen...
 
cwasmer schrieb:
Ich denke, er meint, dass eine Datei mit identischem Namen wie eine andere in früheren Backups diese alten Versionen überschreibt
Das wäre aber ein sehr seltsamer Fehler, ich kann mir nicht recht vorstellen, wie so etwas gehen soll - das Script legt ja Hardlinks von allen Dateien in Ordner Backup.0 in Backup.1 an und aktualisiert dann Ordner Backup.0. Die Links in Backup.1 verweisen aber nach wie vor auf die alten Daten und die werden nicht überschrieben, da es sich ja eben um Hardlinks handelt.

Vielleicht schafft eine erneute Stellungnahme von Brosh ja Klarheit, dies scheint mir so spontan sehr unwahrscheinlich.

P.S.: Das oben ist keine "Theorie", ich habe das x-fach getestet, es ist wirklich so ;).
 
ok, ich gehe wie folgt vor:
- lege im Quellverzeichnis eine neue Textdatei (test.txt) an (mit dem Inhalt 1)
- führe das erste Backup durch (Ergebnis: Alle Dateien werden im Ordner "Backup.0" abgespeichert, also ganz normal)
- ändere den Inhalt der Textdatei (test.txt) im Quellverzeichnis auf Inhalt 2, der Name der Datei bleibt natürlich
- führe das Backup zum zweiten Mal durch. Ergebnis: Die Backup-Ordner Strucktur sieht auf en ersten Blick normal aus (man sieht Ordner "Backup.1 bis 5"), wenn ich jedoch denn Ordner Backup.1 anklicke, dann ändert sich plötzlich der Name des Ordners auf "Backup.2". (Ich habe für gewöhnlich keine Halluzinationen!!!) Und auf einmal sind zwei Ordner mit dem Namen "Backup.2" vorhanden!!! Und der Ordner Backup.1 ist ganz verschwunden. Wenn ich dann auf den zweiten Ordner mit dem Namen "Backup.2" klicke, ändert sich plötzlich der Name in "Backup.3", und ich habe somit 2 "backup.3" Ordner usw... am Ende gibts also keinen Backup.1 Ordner mehr!!!

Hört sich ziemlich abgefahren an, aber ich denke mir bestimmt ncihts aus, ich möchte ja auch nur dass das Programm bei mir läuft.

Aber wahrscheinlich werdet ihr das Problem auch nciht lösen können.

Gruß Brosch
 
Zuletzt bearbeitet:
Hab jetzt nicht den ganzen Thread gelesen, deshalb hoffe ich das meine Frage noch nicht gestellt wurde :D

Q: Was passiert, wenn mein Rechner zu jenem Zeitpunkt, wo das Backup automatisch startet, nicht läuft?
A: Es geschieht gar nichts. Wenn der Mac im Ruhezustand oder ausgeschaltet ist, bleibt er dies auch und die Sicherung wird auch nicht nach dem Wieder-Einschalten nachgeholt.

Gibt es mittlerweile ne Möglichkeit das zu umgehen. Ich würde gerne falls der Rechner mal nicht läuft, den Cronjob danach automatisch starten lassen. Oder ist die Alternative einfach mehrere Cronjobs anzulegen?
 
.. na das problem hatte ich auch und habe mir ein script geschrieben, welches die zeitstempel der sicherungen vergleicht. ich hatte das auch mal gepostet. bei mir funktioniert das seitdem.
schau mal unter meinen beiträgen oder so. weiß gerade nicht wo das genau steht.

gruz kasp
 
Mauki schrieb:
Gibt es mittlerweile ne Möglichkeit das zu umgehen. Ich würde gerne falls der Rechner mal nicht läuft, den Cronjob danach automatisch starten lassen. Oder ist die Alternative einfach mehrere Cronjobs anzulegen?

Warte einfach auf Timemaschine, das tue ich auch. Dann brauche ich mir nie wieder Gedanken um sowas zu machen ;-)
 
Zurück
Oben Unten