Ich arbeite an einem Projekt, das der Jugend Linux beibringen wird. Da wir wissen, dass sie dazu neigen, Elemente in ihren Home-Verzeichnissen zu löschen oder zu beschädigen, suchen wir nach einer guten Snapshot-Option. Wir haben keinen Zugriff auf ausgefallene Tools von großen Speicheranbietern und hoffen, eine Lösung auf Dateisystemebene zu finden.
Ich habe viel über btrfs gelesen, aber wenig Erfahrung. Ich habe einige Erfahrungen mit LVM, bin aber mit der Snapshot-Funktion nicht vertraut. Haben entweder das Dateisystem oder ein anderes die Option, Snapshots entweder nach Bedarf oder nach Zeitplan zu erstellen? Dann machen Sie diesen Snapshot immer ohne Root in einem .snapshot-Ordner in jedem Home-Ordner verfügbar?
Mit dieser Lösung kann ein Benutzer Backups bei Bedarf innerhalb eines Zeitfensters von beispielsweise 24 bis 48 Stunden selbst wiederherstellen. Wir werden einen weiteren Sicherungsprozess für das System und weitere globale Sicherungen durchführen. Wir möchten jedoch nicht, dass dieser Prozess von Studenten angewendet wird, die nur „Fehler“ machen.
sync
unmittelbar vor der Erstellung des Snapshots bearbeitet. Um einige Daten aus dem Snapshot wiederherzustellen, müssen Sie sie bereitstellen. Beachten Sie jedoch, dass jeder Schnappschuss eine Größe hat. Der Speicherplatz wird zum Speichern von Unterschieden zwischen dem Snapshot-Status und dem aktuellen Status verwendet. Daher ist das Speichern des Snapshots als Backup keine gute Idee.Antworten:
Unter Linux ist btrfs Ihre Hauptoption für Snapshots innerhalb eines Dateisystems, ist jedoch noch nicht stabil, obwohl es einige fsck- und Reparatur-Tools enthält .
ZFS ist eine weitere Option von Solaris. Während Sie dies theoretisch unter Linux verwenden könnten, ist es meistens nur im Userland implementiert (obwohl an einer kernelbasierten Implementierung gearbeitet wird) und nicht in Standard-Linux-Distributionen.
Diese LVM-Antwort enthält einige Details zu den Vor- und Nachteilen der Verwendung von LVM-Snapshots sowie einige btrfs / ZFS-Links. Bei einigen Dateisystemen (ext3 und XFS) sorgt LVM dafür, dass der FS eingefroren wird, bevor der Snapshot erstellt wird. LVM-Snapshots können jedoch Leistungsprobleme aufweisen und dennoch einige Fehler aufweisen.
Ich denke nicht, dass LVM eine großartige Lösung für Ihre Anwendung "Schneller Schnappschuss von Benutzerdaten" ist, und btrfs / ZFS sind noch nicht geeignet [Stand 2011].
Stattdessen möchten Sie vielleicht sehen rsnapshot , die ein User-Space - Tool ist , dass effiziente Snapshots erstellt jedes Dateisystem verwenden, ohne LVM zu verwenden. Da es rsync verwendet und die Snapshots in aufeinanderfolgenden Verzeichnissen speichert und feste Verknüpfungen zwischen verschiedenen Snapshots verwendet, wenn sich eine Datei nicht geändert hat, kann es selbst bei relativ großen Dateigruppen überraschend schnell ausgeführt werden. Es wird häufig für Sicherungen verwendet, kann aber auch für diese Art von Benutzerdaten-Snapshot-Anforderung verwendet werden. Mit ein wenig Setup kann jeder seine Snapshot-Dateien mithilfe von schreibgeschütztem NFS oder Samba wiederherstellen - siehe diesen Abschnitt HOWTO Dateien wiederherstellen . Dateien können mit Standard-Linux-Tools wiederhergestellt werden, da rsnapshot das Quellverzeichnis in jedes Snapshot-Verzeichnis spiegelt.
rsnapshot ist mit seinen Standardfunktionen sehr flexibel und da es in Perl geschrieben ist, ist es recht einfach, es anzupassen, z. B. wenn Sie On-Demand-Snapshots bereitstellen möchten. Die Hauptnachteile im Vergleich zu Dateisystem-Snapshots sind Geschwindigkeit und Speicherplatz. Jede Datei, die sich ändert, führt zu einer neuen Kopie im Snapshot, während Dateisystem-Snapshots nur neue Blöcke in die Datei kopieren.
quelle
Nur getupft DIESE Seite auf Wikipedia gibt es eine Snapshot - Funktionen Spalte - nur bewusst in der Zukunft , dies sein , die Menschen wollten.
quelle
Sie sollten für diesen Zweck keine LVM-Snapshots verwenden, da diese einen großen Leistungsverlust bedeuten (insbesondere, wenn mehrere "rollende" Snapshots gleichzeitig aktiv sind). Leider hat Linux einfach keine ausgereiften Dateisysteme mit Unterstützung für Snapshots.
Daher empfehle ich, FreeBSD auf Ihrem Dateiserver zu verwenden. Das Standardformat des UFS2-Dateisystems unterstützt Snapshots. FreeBSD enthält auch eine ordnungsgemäße ZFS-Implementierung (im Gegensatz zu dem hässlichen Kludge unter Linux) mit Snapshots und vielen anderen sehr erweiterten Funktionen. In Verbindung mit einem einfachen Tool wie diesem ähnelt es dem, was High-End-Speicheranbieter wie NetApp anbieten.
Wenn Sie einen Server haben, der als Dateiserver fungieren soll, sollten Sie sich FreeNAS ansehen, das FreeBSD und ZFS gut in ein Appliance-ähnliches System packt.
quelle
snapshot
verknüpften FreeBSD- Befehle von Nicht-Root-Benutzern verwendet werden können. Da die Schüler Linux lernen würden, ist es am besten, wenn die Snapshots von Nicht-Root-Benutzern erstellt und verwendet werden können.rsnapshot
Dies ist relativ einfach, und mit einigen Einrichtungsarbeiten könnte jeder Benutzer seinen eigenen Snapshot-Baum haben, der ihm gehört.snapshot
Dienstprogramm verfügt über die Funktionalität, mit der die Snapshots den Benutzern zur Verfügung gestellt werden können, fast genauso wie bei NetApp. Es ist nicht erforderlichrsnapshot
, Snapshot-Imitationen manuell zu erstellen, wenn Sie ein besseres Betriebssystem (für diesen Zweck) verwenden können, das Snapshots im Dateisystemcode implementiert. Richtige Schnappschüsse sind atomar.