ÿþÜBERSICHT rsnapshot [-vtxqVD] [-c cfgfile] [command] [args] BESCHREIBUNG rsnapshot ist ein Dateisystem-Schnappschuss-Dienstprogramm. Es kann inkrementelle Backups in Form von Schappschüssen lokaler und entfernter Dateisysteme für eine beliebige Anzahl von Maschinen erstellen. Lokale Dateisystem-Snapshots werden mit rsync (1) erstellt. Sichere Remote-Verbindungen werden mit rsync über ssh (1) abgewickelt, anonyme rsync-Verbindungen verwenden dagegen einfach einen rsync-Server. Sowohl der Remote- als auch der lokale Datentransfers sind von rsync abhängig. rsnapshot spart wesentlich mehr Speicherplatz, als Sie sich wahrscheinlich vorstellen können. Der Platzbedarf entspricht in etwa der Größe einer einzigen vollständigen Sicherung zuzüglich der Größe der Kopien geänderter Dateien. rsnapshot macht ausgiebig Gebrauch von Hard-Links. Dies bedeutet, dass falls sich eine Datei nicht ändert, der nächste Schnappschuss lediglich einen hard-link auf die exakt gleiche Datei enthält. rsnapshot wird gewöhnlich durch den Benutzer root (oder als Administrator unter Windows mit installiertem Cygwin) automatisch mittels eines oder mehrerer Cron-Jobs aufgerufen. Es ist jedoch grundsätzlich jedem beliebigen Benutzer möglich, rsnapshot mit einer alternativen Konfigurationsdatei auszuführen. Alle wichtigen Optionen werden in einer Konfigurationsdatei (standardmäßig '/etc/rsnapshot.conf') angegeben. Beim Programmaufruf kann jedoch auch eine alternative Konfigurationsdatei angegeben werden. Es gibt auch einige weitere Optionen, die beim Aufruf von rsnapshot übergeben werden können. Diese Optionen lauten wie folgt: -v (verbose) ausführliche Rückmeldungen -T (Test) zeigt lediglich, welche Befehle ausgeführt werden würden -C (config file) Pfad zu einer alternativen Konfigurationsdatei -X Einschränkung auf ein Dateisystem, kein überqueren von Partitionensgrenzen -Q (quit) nicht schwerwiegende Warnungen werden unterdrückt -V (more verbose) wie -v, aber noch ausführlicher -D (debug) am ausführlichsten, jede Menge Diagnoseinformationen KONFIGURATION '/etc/rsnapshot.conf' ist die Standard-Konfigurationsdatei. Alle Parameter in dieser Datei müssen durch Tabulatoren getrennt werden. '/etc/rsnapshot.conf.default' kann als Referenz verwendet werden. Es wird empfohlen, '/etc/rsnapshot.conf.default' zu kopieren, als 'rsnapshot.conf' zu speichern und schließlich diese Kopie an Ihre Bedürfnisse anpassen. Lange Zeilen können über mehrere Zeilen umgebrochen werden. Diese "Fortsetzungs-Zeilen" müssen jedoch zwingend mit einem Leerzeichen oder einem Tabulatorzeichen beginnen. Beim Parsen der Konfigurationsdatei werden aus diesen "Fortsetzungs-Zeilen" alle führenden und abschließenden Leerzeichen entfernt und anschließend mittels eines eingefügten Tabulatorzeichen an die vorherigen Zeile angehängt. Liste der zulässigen Parameter: config_version - Version der Konfigurationsdatei (erforderlich). Standard ist 1.2. snapshot_root - Pfad innerhalb des lokalen Dateisystems, wo die Schnappschüsse gespeichert werden. include_conf - Einlesen einer anderen Datei in die Konfiguration an dieser Stelle der Konfigurationsdatei. Rekursion ist möglich, aber seien Sie vorsichtig bei der Angabe des Pfades zur Include-Datei. Es wird geprüft, ob die angegebene Datei vorhanden und lesbar ist. Ist dies nicht der Fall, wird eine Fehlermeldung ausgegeben. Die Verwendung von absoluten Pfadangaben ist sehr zu empfehlen. In besonderen Fällen kann der include_conf Wert in `Backticks` gesetzt werden. In diesem Fall wird er ausgeführt, und das auf die Standardausgabe STDOUT ausgegebene Ergebnis wird schließlich in die Konfiguration eingefügt werden. Beachten Sie, dass Shell-Metazeichen möglicherweise interpretiert werden. no_create_root - Wenn auf 1 gesetzt, wird rsnapshot das snapshot_root Verzeichnis nicht erstellen, falls es nicht schon vorhanden ist. cmd_rsync - Vollständiger Pfad zu rsync (erforderlich) cmd_ssh - Vollständiger Pfad zu ssh (optional) cmd_cp - Vollständiger Pfad zu cp (optional, nur die GNU-Version ist möglich) Wenn Sie Linux verwenden, sollten Sie cmd_cp angeben. Wenn Sie eine Plattform, die nicht über GNU cp verfügt, sollten cmd_cp auskommentiert belassen. Mit GNU cp kann rsnapshot sowohl normale Dateien als auch spezielle Dateien (wie FIFOs, Sockets und Block-/Character-Devices) in einem Rutsch abarbeiten. Wenn cmd_cp deaktiviert ist, wird rsnapshot eine eigene eingebaute Funktion 'native_cp_al()' für das Backup regulärer Dateien und Verzeichnisse verwenden. Im Anschluss wird dann - falls nötig - durch einen gesonderten Aufruf von rsync für den Transport spezieller Dateien gesorgt. cmd_rm - Vollständiger Pfad zu rm (optional) cmd_logger - Vollständiger Pfad zum Datenlogger (optional, für syslog-Unterstützung) cmd_du - Vollständiger Pfad zu du (optional, für Berichte zur Datenträgerverwendung) cmd_rsnapshot_diff - Vollständiger Pfad zu rsnapshot-diff (optional) cmd_preexec - Vollständiger Pfad (inclusive notwendiger Argumente) zu einem 'preexec script' (optional). Dieses Skript wird sofort, d.h vor dem eigentlichen Backup, nicht jedoch vor den Rotationen (falls diese vor dem Backup stattfinden, siehe unten) ausgeführt. cmd_postexec - Vollständiger Pfad (inclusive notwendiger Argumente) zu einem 'postexec script' (optional). Dieses Skript wird sofort nach dem eigentlichen Backup, nicht jedoch nach den Rotationen (falls diese nach dem Backup stattfinden, siehe unten) ausgeführt. linux_lvm_cmd_lvcreate linux_lvm_cmd_lvremove linux_lvm_cmd_mount linux_lvm_cmd_umount Pfade zu lvcreate, lvremove, mount und umount-Befehlen für den Einsatz mit Linux LVMs. Diese lvcreate, lvremove, mount und umount-Befehle sind für die Verwaltung der Snapshots von LVM-Volumes erforderlich, ansonsten sind sie optional. retain (behalten) [name] [Zahl] "Name" bezieht sich auf den Namen der Backup-Ebene (z.B. stündlich, täglich, wöchentlich, monatlich etc., auch als "Intervall" bezeichnet). "Zahl" ist die Anzahl der Snapshots für diese Art von Intervall, die maximal vorgehalten werden sollen. Der Wert von "Name" wird rsnapshot beim Aufruf übergeben, damit genau diese Art der Sicherung durchgeführt wird. Ein veraltetes (jedoch bis heute sehr häufig verwendetes) Alias für "retain" ist "Intervall". ----------------------------------------------------------- --- derzeitiges Ende des manuellen Überarbeitung ---------- ----------------------------------------------------------- Beispiel: halten stündlich 6 [Root @ localhost] # rsnapshot hourly Für dieses Beispiel jedes Mal, wenn dieser ausgeführt wird, wird Folgendes passieren: <snapshot_root> / hourly.5 / werden gelöscht, falls sie existiert. <snapshot_root> / Stunde. {1,2,3,4} werden alle gedreht +1 sein, sofern sie existieren. <snapshot_root> / hourly.0 / wird <snapshot_root> / hourly.1 kopiert werden / mit Hard-Links. Jedes Backup-Punkt (siehe unten) wird dann in die entsprechenden Verzeichnisse in <snapshot_root> rsynced werden / hourly.0 / Backup-Ebenen müssen in der Konfigurationsdatei in Reihenfolge angegeben werden, aus den häufigsten am wenigsten häufig. Der erste Eintrag ist diejenige, die mit dem Backup-Punkte synchronisiert werden. Die anschließende Backup-Level (zB täglich, wöchentlich, etc) drehen Sie einfach, mit jedem höheren Level der Sicherung ziehen sich von der darunter für seine 0,0-Verzeichnis. Beispiel: halten stündlich 6 behalten täglich 7 behalten Wöchentlich 4 daily.0 / wird von hourly.5 / kopiert werden, und weekly.0 / wird von daily.6 / kopiert werden hourly.0 / wird direkt aus dem Dateisystem rsynced werden. link_dest 1 Wenn Ihre Version von rsync unterstützt - link-dest (2.5.7 oder neuer), können Sie diese, damit rsync behandeln einige Dinge, die GNU cp oder den eingebauten Unterprogrammen sonst tun würde. Die Aktivierung dieser macht rsnapshot nehmen eine etwas kompliziertere Codes Filiale, aber es ist der beste Weg, um spezielle Dateien auf Nicht-Linux-Systeme unterstützen. sync_first 1 sync_first ändert das Verhalten von rsnapshot. Wenn diese Option aktiviert ist, werden alle Anrufe zu rsnapshot mit verschiedenen Backup-Level drehen Sie einfach Dateien. Alle Sicherungen werden durch den Aufruf rsnapshot mit dem `` sync''Argument behandelt. Die synchronisierten Dateien werden in einem `` gespeichert. Sync''Verzeichnis unter dem snapshot_root. Dies ermöglicht eine bessere Wiederherstellung im Fall, dass rsnapshot in der Mitte eines Sync-Operation unterbrochen wird, da die Sync-Schritt und Drehung Schritte voneinander getrennt sind. Dies bedeutet auch, dass man leicht laufen `` rsnapshot sync''auf der Kommandozeile ohne Angst zu zwingen alle anderen Verzeichnisse nach oben drehen. Dieser Vorteil geht auf Kosten eines weiteren Schnappschuss im Wert von Speicherplatz. Der Standardwert ist 0 (off). verbose 2 Die Menge der Informationen zu drucken, wenn das Programm ausgeführt wird. Zulässige Werte sind 1 bis 5. Der Standardwert ist 2. 1 ruhig zeigen nur schwerwiegende Fehler 2 Default anzeigen Warnungen und Fehler 3 Verbose anzeigen gleichwertige Shell-Befehle ausgeführt 4 Extra Verbose Wie verbose, aber mit mehr Details 5 Debug Alle Arten von Informationen Loglevel 3 Diese Zahl bedeutet dasselbe wie verbose oben, aber es wird bestimmt, wie viele Daten auf das Logfile geschrieben, wenn man geschrieben wird. Das einzige, was fehlt in dieser auf den höheren Ebenen ist die direkte Ausgabe von rsync. Wir hoffen, dass die Unterstützung für diese in einer zukünftigen Version hinzuzufügen. logfile / var / log / rsnapshot Vollständige Dateisystem-Pfad zum rsnapshot Protokolldatei. Wenn dies geschehen ist, wird eine Log-Datei geschrieben, mit der Menge an Daten, die von loglevel gesteuert werden. Wenn dies auskommentiert, wird keine Log-Datei geschrieben werden. gehören [file-name-pattern] Diese übergeben wird direkt an rsync mit dem - include-Direktive. Dieser Parameter kann so oft wie nötig angegeben werden, mit einem Muster pro Zeile definiert. Siehe die rsync (1) man-Seite für die Syntax. auszuschließen [file-name-pattern] Diese übergeben wird direkt an rsync mit der - exclude-Richtlinie. Dieser Parameter kann so oft wie nötig angegeben werden, mit einem Muster pro Zeile definiert. Siehe die rsync (1) man-Seite für die Syntax. include_file / path / to / include / file Diese übergeben wird direkt an rsync mit dem - include-from-Richtlinie. Siehe die rsync (1) man-Seite für die Syntax. exclude_file / path / to / exclude / file Diese übergeben wird direkt an rsync mit der Option - exclude-from-Richtlinie. Siehe die rsync (1) man-Seite für die Syntax. rsync_short_args-a Liste der kurzen Argumente, die an rsync passieren. Wenn nicht angegeben, ist ``-a''die Standardeinstellung. Bitte beachten Sie, dass diese alle müssen nebeneinander sein. Zum Beispiel ist ``-az''gültig, während ``-a-z''ist es nicht. ``-A''ist rsync `` Archiv-Modus'', die es, so viel von der Metadaten des Dateisystems, wie es kann für jede Datei kopieren erzählt. Diese speziell * nicht * enthalten Informationen über Hard-Links, wie stark erhöhen würde rsync die Speichernutzung und verlangsamen. Wenn Sie auf harte Links in Ihre Backups beibehalten müssen, fügen Sie dann `` H''dieser. rsync_long_args - delete - numeric-ids - relative - delete-ausgeschlossen Liste der zu lange Argumente zu rsync passieren. Die Standardwerte sind - delete - numeric-ids - relative - delete-excluded Dies bedeutet, dass die Verzeichnisstruktur in jedem Backup-Punkt Ziel wird, dass in der Backup-Punktquelle übereinstimmen. Die Kurse werden in rsync_long_args zulässig, z. B. - rsync-path = `` sudo / usr / bin / rsync''. Sie können entweder einfache (') oder doppelte (``) zitiert, aber verschachtelte Zitate (einschließlich gemischte verschachtelten Anführungszeichen) sind nicht zulässig. Ähnliche Angabe ist auch in pro-Backup-Punkt rsync_long_args erlaubt. ssh_args-p 22 Argumente, die an ssh übergeben werden. Wenn nicht angegeben, wird standardmäßig keine. du_args-csh Argumente, die an du weitergegeben werden. Wenn nicht angegeben, ist-csh die Standardeinstellung. GNU du unterstützt, csh, BSD du unterstützt-CSK, Solaris du nicht unterstützt-c überhaupt. Die GNU-Version empfohlen, da es die meisten Funktionen bietet. Sperrdatei / var / run / rsnapshot.pid stop_on_stale_lockfile 0 Sperrdatei zu verwenden, wenn rsnapshot ausgeführt wird. Dies verhindert einen zweiten Aufruf von clobbering die erste. Wenn nicht angegeben, wird keine Lock-Datei verwendet. Vergewissern Sie sich, um ein Verzeichnis, das nicht beschreibbar Welt aus Gründen der Sicherheit verwenden. Die Verwendung eines Lock-Datei wird dringend empfohlen. Wenn eine Sperrdatei vorhanden ist, wenn rsnapshot startet, wird es versuchen, die Datei zu lesen und zu stoppen mit einem Fehler, wenn es nicht kann. Wenn nachgewiesen werden kann * * lesen Sie die Datei, sieht es, wenn ein Prozess existiert mit der PID in der Datei vermerkt. Ist dies der Fall, stoppt rsnapshot mit einer Fehlermeldung. Wenn es keinen Prozess mit der PID, dann können wir davon ausgehen, dass die Lock-Datei veraltet ist und es ignorieren, es sei denn * * stop_on_stale_lockfile zu 1 in diesem Fall halten wir eingestellt ist. stop_on_stale_lockfile standardmäßig auf 0. one_fs 1 Verhindert rsync vor der Kreuzung Dateisystem-Partitionen. Wird hier eine Wert von 1 aktiviert diese Funktion. 0 schaltet sie aus. Dieser Parameter ist optional. Der Standardwert ist 0 (off). use_lazy_deletes 1 Änderungen Standardverhalten von rsnapshot und zunächst nicht entfernen Sie die älteste Schnappschuss. Stattdessen bewegt sich das Verzeichnis auf _delete. [Processid] und weiter als normal. Sobald das Backup abgeschlossen ist, wird die Sperrdatei entfernt werden, bevor rsnapshot beginnt das Löschen des Verzeichnisses sein. Aktivieren bedeutet dies, dass Schnappschüsse zu bekommen früher (seit dem Löschen nicht erst kommen) aufgenommen, und alle anderen rsnapshot Prozesse sind zum Start zugelassen, während die endgültige Löschen geschieht. Dieser Vorteil geht auf Kosten der Verwendung von mehr Speicherplatz. Der Standardwert ist 0 (off). Die Details, wie das funktioniert haben in rsnapshot Version 1.3.1 geändert. Ursprünglich konnte man immer nur einen. Verzeichnis löschen per Backup-Ebene. Jetzt können Sie viele, so dass, wenn Sie Ihre nächsten (z. B.) stündlich Backup startet, während das vorherige noch tun, ist ein fauler löschen Sie können vorübergehend zusätzliche _delete Verzeichnisse hanging around. linux_lvm_snapshotsize 2G LVM-Snapshot (s) size (lvcreate - size Option). linux_lvm_snapshotname rsnapshot Name, um beim Erstellen der logischen LVM-Volume-Snapshot (s) werden (lvcreate - Namens-Option). linux_lvm_vgpath / dev Pfad zu den LVM Volume Groups. linux_lvm_mountpath / mnt / lvm-snapshot Mount-Point zu verwenden, um vorübergehend montieren Snapshot (s). Backup / etc / localhost / Backup root@example.com: / etc / example.com / Backup rsync: / / example.com/path2 / example.com / Backup / var / localhost / one_fs = 1 Backup-lvm: / / vg0/home/path2 / lvm-vg0 / backup_script / usr / local / bin / backup_pgsql.sh pgsql_backup / Beispiele: Backup / etc / localhost / Sichert / etc / zu <snapshot_root> / <retain> .0/localhost/etc / Verwendung auf dem lokalen Dateisystem rsync Backup / usr / local / localhost / Sichert / usr / local / <snapshot_root> / <retain> .0/localhost/usr/local / rsync auf dem lokalen Dateisystem Backup root@example.com: / etc / example.com / Sichert root@example.com: / etc / zu <snapshot_root> / <retain> .0/example.com/etc / mit über ssh rsync Backup root@example.com: / usr / local / example.com / Sichert root@example.com: / usr / local / <snapshot_root> / <retain> .0/example.com/usr/local / mit über ssh rsync Backup rsync: / / example.com / pub / example.com / pub / Sichert rsync: / / example.com / pub / auf <snapshot_root> / <retain> .0/example.com/pub / unter einem Pseudonym rsync-Server. Bitte beachten Sie, dass im Gegensatz zu sichern lokale Pfade und mittels rsync über ssh, rsync-Server `` Module'', die Top-Level-Verzeichnisse, die exportiert werden können. Daher sollte das Modul auch in den Zielpfad angegeben werden, wie im obigen Beispiel (die pub /-Verzeichnis am Ende) dargestellt. Backup / var / localhost / one_fs = 1 Dies ist die gleiche wie die anderen Beispiele, aber beachten Sie die vierte Spalte. Dies ist, wie Sie pro-Backup-Punkt-Optionen angeben, um over-ride globalen Einstellungen. Diese zusätzlichen Parameter kann mehrere Optionen, durch Komma getrennt. Es ist besonders nützlich, wenn die Angabe pro-backup rsync schließt so: Backup root @ rechner: / rechner + rsync_long_args =-- exclude = / var / spool / Beachten Sie das Pluszeichen. Das sagt rsnapshot auf die Liste der Argumente hinzufügen, um rsync anstatt sie zu ersetzen in der Liste weiter. Backup-lvm: / / vg0/home/path2 / lvm-vg0 / Sichert die LVM logisches Volumen namens Hause, der Volume-Gruppe vg0, um <snapshot_root> / <interval> .0/lvm-vg0 /. Will erstellen, montieren, Backup, unmounten und entfernen Sie eine LVM-Snapshots für jeden lvm: / / Eintrag. backup_script / usr / local / bin / backup_database.sh db_backup / In diesem Beispiel geben wir ein Skript oder Programm ausgeführt werden. Dieses Skript sollte einfach Dateien erstellen und / oder Verzeichnisse in ihrer aktuellen Verzeichnis. rsnapshot wird dann die Ausgabe und verschieben Sie sie in das Verzeichnis in der dritten Spalte angegeben. Bitte beachten Sie, dass das, was in das Zielverzeichnis komplett gelöscht und neu erstellt. Aus diesem Grund verhindert rsnapshot Sie von der Angabe ein Zielverzeichnis für eine backup_script, dass andere Sicherungen clobber wird. Also in diesem Beispiel, sagen die backup_database.sh script läuft einfach einen Befehl wie: #! / Bin / sh mysqldump-uusername mydatabase> mydatabase.sql chmod u = r, go = mydatabase.sql # r -------- (0400) rsnapshot dauert die generierten `` mydatabase.sql''Datei und verschieben Sie sie in die <snapshot_root> / <retain> .0/db_backup / Verzeichnis. Bei nachfolgenden läuft, prüft rsnapshot die Unterschiede zwischen den Dateien gegenüber dem Vorjahr Dateien erstellt. Wenn das Backup-Skript erzeugt die gleiche Ausgabe auf den nächsten Lauf, werden die Dateien hart gegen die vorangegangenen verknüpft werden, und keinen zusätzlichen Speicherplatz in Anspruch genommen wird. Denken Sie daran, dass Tabulatoren müssen alle Elemente zu trennen, und dass es einen Schrägstrich am Ende jedes Verzeichnis sein. Eine Raute (#) am Anfang einer Zeile als Kommentar behandelt. Dass sie alle zusammen (ein Beispiel-Datei): # Dies ist ein Kommentar, REMEMBER TABS müssen alle Elemente SEPARATE config_version 1,2 snapshot_root /. snapshots / cmd_rsync / usr / bin / rsync cmd_ssh / usr / bin / ssh # Cmd_cp / bin / cp cmd_rm / bin / rm cmd_logger / usr / bin / logger cmd_du / usr / bin / du linux_lvm_cmd_lvcreate / sbin / lvcreate linux_lvm_cmd_lvremove / sbin / lvremove linux_lvm_cmd_mount / bin / mount linux_lvm_cmd_umount / bin / umount linux_lvm_snapshotsize 2G linux_lvm_snapshotname rsnapshot linux_lvm_vgpath / dev linux_lvm_mountpath / mnt / lvm-snapshot halten stündlich 6 behalten täglich 7 behalten Wochenpreis 7 behalten monatlich 3 Backup / etc / localhost / backup / home / localhost / backup_script / usr / local / bin / backup_mysql.sh mysql_backup / Backup root@foo.com: / etc / foo.com / Backup root@foo.com: / home / foo.com / Backup root@mail.foo.com: / home / mail.foo.com / Backup rsync: / / example.com / pub / example.com / pub / Backup-lvm: / / vg0/xen-home / lvm-vg0/xen-home / USAGE rsnapshot kann von jedem Benutzer verwendet werden, sondern für das gesamte System-Backups werden Sie wahrscheinlich wollen es als root ausführen. Da Backups meist vernachlässigt werden, wenn menschliches Eingreifen erforderlich ist erhalten, ist der bevorzugte Weg, um es von cron ausgeführt werden. Wenn Sie erstmaligen Einrichten Ihres Backups, werden Sie wahrscheinlich wollen auch sie von der Kommandozeile aus ein-oder zweimal laufen, um ein Gefühl für das, was er tut zu bekommen. Hier ist ein Beispiel crontab Eintrag, vorausgesetzt, dass die Backup-Level stündlich, täglich, wöchentlich und monatlich in / etc / rsnapshot.conf definiert wurden 0 * / 4 * * * / usr / local / bin / rsnapshot hourly 50 23 * * * / usr / local / bin / rsnapshot täglich 40 23 * * 6 / usr / local / bin / rsnapshot wöchentlich 30 23 1 * * / usr / local / bin / rsnapshot monatlich In diesem Beispiel wird Folgendes tun: 6 stündliche Backups pro Tag (einmal alle 4 Stunden, bei 0,4,8,12,16,20) 1 täglich Backup jeden Tag um 11.50 Uhr 1 x wöchentlich Backup jede Woche, um 11:40 Uhr, am Samstag (6. Tag der Woche) 1 Monatliche Sicherung jeden Monat, um 11:30 Uhr am 1. Tag des Monats Es ist normalerweise eine gute Idee, die größere Backup-Level Zeitplan ein wenig, bevor die unteren laufen. Zum Beispiel in der crontab oben merken, dass `` täglichen''10 Minuten vor dem `` hourly''läuft. Der Hauptgrund dafür ist, dass die tägliche drehen wird herausziehen ältesten stündlich und machen, dass der jüngste Tag (was bedeutet, dass die nächste Stunde drehen müssen nicht die älteste stündlich zu löschen), die effizienter ist. Ein zweiter Grund ist, dass es schwieriger ist, vorherzusagen, wie lange die niedrigste Backup Ebene bringen, da es tatsächlich ein rsync von der Quelle als auch die drehen, dass alle Sicherungen braucht. Wenn rsnapshot dauert länger als 10 Minuten, um den `` täglichen''drehen (normalerweise mit dem Löschen der ältesten täglichen Snapshot) zu tun, dann sollten Sie die Zeit zwischen dem Backup-Level. Andernfalls (vorausgesetzt, Sie haben die Sperrdatei Parameter, wie empfohlen) Ihr Stundenlohn Schnappschuss wird manchmal scheitern, weil die tägliche noch die Sperre. Denken Sie daran, dass diese nur die Zeiten, dass das Programm läuft, stehen. Um die Anzahl der Backups gespeichert werden, legen die Zahlen zu behalten in / etc / rsnapshot.conf Um zu überprüfen, den benötigten Speicherplatz von rsnapshot verwendet, können Sie es mit dem `` du''Argument aufrufen. Zum Beispiel: rsnapshot du Dieser zeigt Ihnen genau, wie viel Speicherplatz bis in den Schnappschuss Wurzeln geschlagen. Diese Funktion erfordert den UNIX Befehl du auf Ihrem System installiert sein, denn es ist das ``-csh''Befehlszeilenargumente zu unterstützen und in Ihrem Pfad sein. Sie können auch außer Kraft setzen Ihren Weg Einstellungen und der Flags auf du mit dem cmd_du und du_args Parameter. Es ist auch möglich, einen relativen Dateipfad als zweites Argument übergeben, um einen Bericht über eine bestimmte Datei oder ein Unterverzeichnis zu bekommen. rsnapshot du localhost / home / Die GNU-Version von `` du''bevorzugt. Die BSD-Version funktioniert auch gut, aber unterstützt nicht die Option-h (Einsatz-k statt, um die Summen in Kilobyte zu sehen). Andere Versionen von `` du'', wie Solaris, kann überhaupt nicht funktionieren. Um die Unterschiede zwischen zwei Verzeichnissen, rufen Sie rsnapshot mit dem `` diff''Argument, das von zwei Backup-Level oder Verzeichnispfade folgen. Zum Beispiel: rsnapshot diff daily.0 daily.1 rsnapshot diff daily.0/localhost/etc daily.1/localhost/etc rsnapshot diff / .snapshots/daily.0 / .snapshots/daily.1 Dies ruft die rsnapshot-diff-Programm, das beide Verzeichnisse auf der Suche nach Unterschieden (basierend auf Hard-Links) gescannt werden. rsnapshot sync Wenn sync_first aktiviert ist, müssen rsnapshot zuerst mit dem Sync-Argument aufgerufen werden, gefolgt von den anderen üblichen cron-Einträge. Die Sync ist als die niedrigste, am häufigsten Backup-Ebene geschehen, und kurz bevor. Zum Beispiel: 0 * / 4 * * * / usr / local / bin / rsnapshot sync & & / usr / local / bin / rsnapshot hourly 50 23 * * * / usr / local / bin / rsnapshot täglich 40 23 1,8,15,22 * * / usr / local / bin / rsnapshot wöchentlich 30 23 1 * * / usr / local / bin / rsnapshot monatlich Die Sync-Betrieb läuft einfach rsync und alle Backup-Skripts. In diesem Szenario alle Anrufe drehen Sie einfach Verzeichnisse, auch den niedrigsten Level der Sicherung. rsnapshot sync [dest] Wenn sync_first aktiviert ist, passiert all sync Verhalten während eines zusätzlichen Sync-Stufe (siehe oben). Bei Verwendung des Sync-Argument, ist es auch möglich, ein Backup-Zielort als optionalen Parameter angeben. Wenn dies erledigt ist, wird nur Backup-Punkte-Sharing, das Zielverzeichnis synchronisiert werden. Zum Beispiel, sagen wir mal, dass example.com einen Zielpfad durch eine oder mehrere Ihrer Backup-Punkte geteilt wird. rsnapshot sync example.com Dieser Befehl wird nur die Dateien synchronisiert, die normalerweise bis in example.com gesichert werden. Es erhalten keine andere Backup-Punkte mit leicht unterschiedlichen Werten (wie example.com / etc /, zum Beispiel). Um example.com / etc sync, müssten Sie rsnapshot erneut ausführen, mit example.com / etc als optionaler Parameter. EXIT VALUES 0 Alle Operationen wurden erfolgreich abgeschlossen 1 A schwerwiegender Fehler aufgetreten 2 Einige Warnungen sind aufgetreten, aber die Sicherung noch fertig FILES / Etc / rsnapshot.conf SIEHE AUCH rsync (1), ssh (1), Logger (1), sshd (1), ssh-keygen (1), Perl (1), cp (1), du (1), crontab (1) DIAGNOSTICS Verwenden Sie die Option-t, um zu sehen, welche Befehle würden ausgeführt worden sein. Dies zeigt Ihnen die Befehle rsnapshot versuchen würde, zu laufen. Es gibt ein paar kleinere Unterschiede (z. B. nicht, das ein Versuch, die Sperrdatei zu entfernen, weil es war nicht wirklich in den Test erstellt), sondern soll Ihnen eine sehr gute Idee, was passieren wird. Mit der Option-v,-V, und-D Fahnen gedruckt werden immer mehr Informationen an STDOUT. Achten Sie darauf, keine Leerzeichen in der Config-Datei, die Sie denken tatsächlich Registerkarten. Viel andere seltsame Verhalten ist vermutlich auf das gute alte Dateisystem-und SSH-Authentifizierung Probleme zurückgeführt werden. BUGS Bitte melden Sie Fehler (und andere Kommentare), um die rsnapshot-discuss Mailingliste: http://lists.sourceforge.net/lists/listinfo/rsnapshot-discuss NOTES Vergewissern Sie sich, / etc / rsnapshot.conf Datei enthält alle Elemente durch Tabulatoren getrennt. Siehe / etc / rsnapshot.conf.default für ein funktionierendes Beispiel-Datei. Stellen Sie sicher stellen einen Schrägstrich am Ende aller Verzeichnis verweist. Wenn Sie dies nicht tun, müssen Sie eventuell zusätzliche Verzeichnisse in Ihre Schnappschüsse erstellt. Für weitere Informationen darüber, wie der nachstehende Schrägstrich gehandhabt finden Sie in der rsync (1) manpage. Vergewissern Sie sich, um den Snapshot-Verzeichnis machen chmod 700 und im Besitz von root (unter der Annahme Sicherungen werden durch den Benutzer root gemacht). Wenn der Snapshot-Verzeichnis ist lesbar von anderen Benutzern, werden sie in der Lage sein, die Schnappschüsse mit ihrer Dateien ändern, damit die Zerstörung der Integrität der Schnappschüsse. Wenn Sie möchten, dass normale Benutzer in der Lage sein, ihre eigenen Backups wiederherzustellen, gibt es eine Reihe von Möglichkeiten, das erreicht werden kann. Ein solches Szenario wäre: Set snapshot_root to / .private / .snapshots in / etc / rsnapshot.conf Setzen Sie die Zugriffsrechte auf diese Verzeichnisse wie folgt: drwx ------ /. private drwxr-xr-x / .private / .snapshots Exportieren Sie die / .private / .snapshots Verzeichnis über NFS schreibgeschützt, ein read-only Samba-Freigabe, etc. Siehe rsnapshot HOWTO für weitere Informationen über das Erstellen von Backups für Nicht-privilegierte Benutzer. Für ssh zur Arbeit durch cron unbeaufsichtigt, werden Sie wahrscheinlich auf den öffentlichen Schlüssel Logins verwenden. Erstellen Sie eine SSH-Schlüssel ohne for root Passwort, und der dazugehörige öffentliche Schlüssel auf jedem Gerät, das Sie sichern möchten. Wenn Sie ein Backup-System-Dateien von entfernten Rechnern, bedeutet dies wahrscheinlich unbeaufsichtigt root-Logins. Eine andere Möglichkeit ist es, einen zweiten Benutzer auf dem Rechner nur für Backups zu erstellen. Geben Sie dem Benutzer einen anderen Namen wie `` rsnapshot'', aber halten Sie die UID und GID auf 0 setzen, um root-Rechte zu geben. Allerdings machen Logins restriktiver, entweder durch ssh-Konfiguration oder Verwendung eines alternativen Shell. ACHTUNG! Wenn der private Schlüssel durch einen Angreifer gewonnen wird, haben sie freien Lauf aller beteiligten Systeme. Wenn Ihnen unklar ist, wie man dies tun, lesen Sie ssh (1), sshd (1) und ssh-keygen (1). Backup-Skripts sind als der gleiche Benutzer, dass rsnapshot ist als Laufen laufen. Normalerweise ist dies root. Stellen Sie sicher, dass alle Ihre Backup-Skripts werden nur von root beschreibbar, und dass sie nicht nennen alle anderen Programme, die nicht von root gehören. Wenn Sie dies nicht tun, kann jeder, der das Backup-Skript oder Programm es nennt schreiben kann vollständig übernehmen die Maschine. Natürlich ist dies nicht eine Situation eindeutig zuzuordnen rsnapshot. Standardmäßig sind rsync Transfers erfolgt über die - numeric-ids-Option. Dies bedeutet, dass Benutzernamen und Gruppennamen bei der Übertragung werden ignoriert, aber die UID / GID Informationen intakt gehalten. Die Annahme ist, dass die Sicherungen in der gleichen Umgebung sie kamen, werden wiederhergestellt. Ohne diese Option würde Wiederherstellen von Backups für mehrere heterogene Server werden unüberschaubar. Wenn Sie Archivieren von Schnappschüssen mit GNU tar sind, können Sie die Anwendung - numeric-owner-Parameter. Auch eine Kopie der archivierten der / etc / passwd und / etc / group-Dateien praktisch für die UID / GID-Mapping zu nennen. Wenn Sie Backup-Punkte entfernen in der Config-Datei, die zuvor archivierten Dateien unter diesen Punkten dauerhaft in den Snapshots Verzeichnis bleiben, wenn Sie die Dateien entfernen sich. Wenn Sie Speicherplatz sparen möchten, müssen Sie in die <snapshot_root> Verzeichnis und entfernen Sie manuell die Dateien aus dem Backup kleinste Ebene ist `` 0,0''-Verzeichnis. Zum Beispiel, wenn Sie zuvor die Sicherung / home / mit einem Ziel von localhost / und wird stündlich Ihre kleinste Backup-Level, müssten Sie folgendes tun, dass Speicherplatz freizugeben: rm-rf <snapshot_root> / hourly.0/localhost/home / Bitte beachten Sie, dass die anderen Schnappschüsse zuvor von / home gemacht / wird immer noch mit, dass Speicherplatz, aber da die Dateien aus hourly.0 / gespült werden, werden sie nicht mehr an die nachfolgenden Verzeichnisse kopiert werden, und wird somit in entfernt werden zu gegebener Zeit als die Rotationen geschehen. ================================================================= COPYRIGHT Copyright (C) 2003-2005 Nathan Rosenquist Portions Copyright (C) 2002-2007 Mike Rubel, Carl Wilhelm Soderstrom, Ted Zlatanov, Carl Boe, Shane Liebling, Bharat Mediratta, Peter Palfrader, Nicolas Kaiser, David Cantrell, Chris Petersen, Robert Jackson, Justin Grote, David Keegel, Alan Batie, Dieter Bloms, Henning Moll, Ben Low, Anthony Ettinger This man page is distributed under the same license as rsnapshot: the GPL (see below). This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA