Hallo
Hallo Liste,
derzeit versuche ich die Backup-Funktionen auf einem unserer Server zu optimieren. Bei einem Voll-Backup wird zunächst mittels »find« eine Dateiliste erstellt, welche anschließen über »tar --files-from <DATEILISTE>« eingelesen wird.
Ich würde mich hier auf die Fähigkeit von Tar verlassen (Stichwort Index-File), wenn es darum geht, zu ermitteln, was neu hinzugekommen ist.
wenn gnu tar zu langsam könnte man star mal testen
vielleicht hat tar auch Probleme mit links
Ohne diese Dateiliste springt mich der Prozess irgendwann mit einer Fehlermeldung an, da sich die Daten innerhalb der Ordnerstruktur ändern können (hauptsächlich kommen Dateien hinzu).
Das wird doch auch mit dieser Dateiliste passieren. Solange Leben in den Verzeichnissen ist, wird tar bemerkten, daß während des Sicherns Änderungen passieren. Ob das kritisch ist, kann tar nicht wissen, es wird aber weiterarbeiten.
Welche Möglichkeit habe ich, diese Fehlermeldung zu unterdrücken? Gibt
tar … 2>/dev/null
es ein anderes Archiviersystem, welches ihr mir stattdessen empfehlen würdet? Wie machen es "richtige" Backup-Programme, wenn sie von einem Live-System Daten sichern sollen?
Die sollten die selben Probleme haben. Was das mehrfach erwähnte Bacula hier macht, weiß ich nicht, vielleicht einfach die Meldungen unterdrücken. Amanda zeigt diese Meldungen, wenn es die Sicherung mit tar erstellt. Wenn es dump benutzt, weiß ich gerade nicht, was da passiert, ob dump etwas äußert.
"Warum der Aufwand?" könnte nun eine Frage lauten. Der »find«-Prozess schluckt aufgrund der hohen Anzahl (kleiner) Dateien eine Menge Zeit.
man könnte versuchen in Echtzeit mit dnotify eine Liste erstellen oder gleich den Archiv hinzufügen
Für eine Vollsicherung von knapp 250 GB Daten haben wir mit dieser Methode 56 Stunden berechnet.
Berechnet oder erreicht.
derzeitiger Ablauf: »find« > »tar« > »pbzip2«
Ich würde vielleicht das Dateisystem in ein LVM legen und dann einen Snapshot machen, den ich in aller Ruhe sichern kann. Da ändern sich dann auch keine Files mehr. Ob Du für den Snapshot irgendwelche Dienste anhalten willst, hängt von Deinen Anwendungen ab.
Ich mache gerne sowas:
snapshot fsck - wenn fehler, dann snapshot wegschmeissen und noch mal snapshot dump / tar / whatever snapshot wegschmeissen
würde ich auch probieren
oder ein Filesystem nutzen das snapshort/oder history kann (zfs(performance schlecht Userspace) brtfs (beta) logfs() ext3cow())
man könnte auch überlegen die Daten per drbd auf einen anderen Rechner zubringen
drbd deaktivieren backup drbd aktivieren und sync (habe ich aber keine Erfahrung ob das geht)
Andreas
-- Heiko