Yuriy Seleznev/Shutterstock.com
Riskieren Sie keinen Datenverlust. Sichern Sie Ihre wertvollen Daten über die Linux-Befehlszeile. Wir werden die verwenden rsync
Befehl dafür, und wir haben sogar einige nette optionale grafische Oberflächen dafür gefunden.
Es gibt viele Möglichkeiten, eine Sicherungskopie Ihrer Dateien zu erstellen. Wir wollten Ihnen einen robusten, flexiblen und zuverlässigen Weg zum Schutz Ihrer Daten zeigen. Wir wählen rsync
wegen seiner angesehene Algorithmen die die Unterschiede zwischen Dateien im Quellverzeichnis und im Zielverzeichnis berechnen. Es werden nur die Unterschiede zwischen zwei Versionen einer Datei übertragen, nicht die gesamte Datei, wenn dies vermieden werden kann.
Wenn diese Effizienz mit seiner soliden Erfolgsbilanz bei der Durchführung von Dateikopien und Verzeichnissynchronisierungen seit Mitte der 1990er Jahre gepaart wird, rsync
ist ein perfekter Kandidat zum Erstellen von Backups über die Linux-Befehlszeile.
Darüber hinaus gibt es unabhängige Softwareprogramme, die als Front-End für rsync
. Sie bieten grafische Benutzeroberflächen (GUIs) für rsync
die einige Leute vielleicht einfacher zu verwenden finden.
Je einfacher und schneller es ist, ein Backup zu erstellen, desto wahrscheinlicher ist es.
Verwenden von rsync mit einer externen Festplatte
Um eine Sicherungskopie Ihrer Daten auf eine externe Festplatte zu erstellen, muss die Festplatte gemountet und für Sie zugänglich sein. Wenn du es schreiben kannst, dann kannst du es auch rsync
. In diesem Beispiel wird eine externe USB-Festplatte namens SILVERXHD (für „Silver eXternal Hard Drive“) an den Linux-Computer angeschlossen. Es wurde vom Betriebssystem automatisch gemountet.
Sie müssen den Pfad zum Laufwerk kennen. Öffnen Sie in GNOME den Nautilus-Dateibrowser und suchen Sie den Namen des Laufwerks in der Seitenleiste.
Bewegen Sie den Mauszeiger über den Namen des externen Laufwerks und ein Tooltip zeigt Ihnen den Pfad zum Laufwerk an.
In diesem Beispiel informiert uns der Tooltip, dass der Einhängepunkt für das Dateisystem auf dem externen Laufwerk „/media/dave/SILVERXHD“ ist.
Wenn Ihr Dateibrowser dies nicht tut, navigieren Sie zum externen Laufwerk und öffnen Sie ein Terminalfenster an diesem Ort. Verwenden Sie die pwd
Befehl, um den Pfad zum Terminalfenster zu drucken.
Kopieren des Inhalts aus dem Quellverzeichnis
Benutzen rsync
Um den Inhalt eines Verzeichnisses in Ihr Backup-Ziel zu kopieren, verwenden Sie den folgenden Befehl.
Die -r
(rekursive) Option verursacht rsync
um alle verschachtelten Unterverzeichnisse und deren Inhalt zu kopieren. Beachten Sie, dass am Ende des Wortes „SILVERXHD“ ein Schrägstrich „/“ steht, der jedoch auf die nächste Zeile im Screenshot umgebrochen wurde.
rsync -r /home/dave/Documents/ /media/dave/SILVERXHD/
Die Dateikopie wird ausgeführt, und Sie kehren zur Eingabeaufforderung der Befehlszeile zurück.
Wenn wir uns das externe USB-Laufwerk ansehen, sehen wir, dass die Verzeichnisse, die sich im Verzeichnis Dokumente befinden, in das Stammverzeichnis des externen Laufwerks kopiert wurden.
ls
Kopieren des Quellverzeichnisses und seines Inhalts
Wenn Sie wollten, dass der Inhalt des Documents-Verzeichnisses auf das externe Laufwerk kopiert wird, entfernen Sie das „/“ am Ende von „/home/dave/Documents“ in der Befehlszeile wie folgt:
rsync -r /home/dave/Documents /media/dave/SILVERXHD/
Um Verwechslungen zu vermeiden, habe ich die beiden zuvor kopierten Verzeichnisse vom externen Laufwerk entfernt, bevor dieser zweite Befehl ausgeführt wurde.
Wenn wir die zweite Kopie abschließen lassen und noch einmal auf das externe Laufwerk schauen, sehen wir, dass das Documents-Verzeichnis kopiert wurde. Der Inhalt befindet sich in diesem Verzeichnis. Sie befinden sich nicht im Stammverzeichnis des externen Laufwerks.
In ein bestimmtes Zielverzeichnis kopieren
Um in ein bestimmtes Verzeichnis auf der Zielfestplatte zu kopieren, fügen Sie den Namen des Verzeichnisses zum Zielpfad hinzu. Nehmen wir an, wir möchten den Inhalt des Verzeichnisses „/home/dave/Documents“ in ein Verzeichnis namens „backups“ auf dem externen Laufwerk kopieren.
Wir würden dies mit dem folgenden Befehl tun.
rsync -r /home/dave/Documents/ /media/dave/SILVERXHD/backups/
Wenn wir auf dem externen Laufwerk nachsehen, können wir sehen, dass das Backup-Verzeichnis erstellt wurde und sich in diesem Verzeichnis der Inhalt des Verzeichnisses „/home/dave/Documents“ befindet.
ls
ls backups
Beibehalten des Dateieigentums und der Berechtigungen
Verwenden Sie die -a
(Archiv)-Option zum Beibehalten von Dateiattributen wie Änderungsdatum, Dateieigentum, Zugriffsberechtigungen und mehr für kopierte Dateien, symbolische Links und spezielle Blockdateien.
rsync -ra /home/dave/Documents/ /media/dave/SILVERXHD/backups/
Verwenden des ausführlichen Modus
Die -v
(ausführliche) Option erzwingt rsync
um die Dateien aufzulisten, während sie kopiert werden.
rsync -rav /home/dave/Documents/ /media/dave/SILVERXHD/backups/
Wenn der Kopiervorgang abgeschlossen ist, wird eine Zusammenfassung der Sicherung angezeigt.
- : Die an das Ziel übertragenen Bytes.
- : Die vom Host empfangenen Bytes.
- : ist die effektive Übertragungsrate.
- : Stellt die Größe der Daten dar, die bei Verwendung von . gesendet worden wären
rsync
. Bei nachfolgenden Läufen von rsync
es werden nur die Dateiunterschiede übertragen. Diese Zahl stellt die Daten dar, die übertragen werden mussten.
- : Dies ist das Verhältnis zwischen der Datenmenge, die gesendet werden musste, und der Gesamtdatenmenge, die vorhanden ist. Wenn
rsync
alle Dateien vollständig kopieren müssen (z. B. beim ersten Ausführen), beträgt die Beschleunigung 1,0. Wann rsync
als nächstes verwendet wird, optimiert es die Übertragungen. Es werden nur die Unterschiede zwischen den Dateien gesendet, nicht die gesamten Dateien. Dateien ohne Änderungen werden ignoriert. Die Beschleunigungszahl stellt das Verhältnis zwischen der kleinen zu übertragenden Datenmenge und der Gesamtgröße der Dateien dar.
Verwenden der Fortschrittsoption
Die -P
(Fortschritt) Option Ursachen rsync
um nach dem Kopieren jeder Datei einen kleinen Fortschrittsbericht zu generieren.
rsync -raP /home/dave/Documents/ /media/dave/SILVERXHD/backups/
Die bereitgestellten Informationen können zwischen jeder kopierten Datei eingesehen werden.
Die bereitgestellten Informationen sind:
- : Für diese Datei übertragene Daten.
- : Prozentsatz der übertragenen Datei.
- : Datenübertragungsrate.
- : Geschätzte verbleibende Zeit zum Übertragen dieser Datei.
- : Die Anzahl der bisher übertragenen Dateien.
- : Die Anzahl der Dateien, die noch von den Optimierungsalgorithmen überprüft und verifiziert werden müssen.
Mehr Geschwindigkeit hinzufügen
Um Übertragungen zu beschleunigen, verwenden Sie die -z
(Kompressions-)Option. Dadurch wird die Datei bei der Übertragung komprimiert, die Datei wird jedoch unkomprimiert im Zielverzeichnis gespeichert.
Bei Übertragungen mit vielen kleinen Dateien bringt die Komprimierungsoption keine nennenswerten Vorteile. Bei Sammlungen größerer Dateien kann es die Übertragungszeit sinnvoll verkürzen.
Wir verwenden auch die --partial
Möglichkeit hier. rsync
löscht teilweise übertragene Dateien, die durch Netzwerkstörungen oder andere Unterbrechungen verursacht wurden. Die --partial
Optionskräfte rsync
um die teilweise übertragenen Dateien auf dem Ziel zu belassen. Die Nettozeit rsync
ausgeführt wird, müssen die Teile der teilweise übertragenen Dateien nicht erneut übertragen werden.
Beachten Sie, dass Sie diese Option möglicherweise nicht verwenden möchten, wenn die Gefahr besteht, dass jemand die teilweise übertragenen Dateien mit vollständig übertragenen Dateien verwechselt.
rsync -ravz --partial /home/dave/Documents/ /media/dave/SILVERXHD/backups/
In unserem Beispiel sind die Vorteile marginal.
Das Beschleunigungsverhältnis hat sich verbessert, aber um zwei Hundertstel Prozent! In einem realen Szenario werden Ihre Geschwindigkeitsverbesserungen beeindruckender sein.
Verwenden von rsync über ein Netzwerk
Bisher haben wir ein externes USB-Laufwerk ins Visier genommen. Um einen Netzwerkspeicherort als Ziel für die Sicherung zu verwenden, verwenden Sie den Pfad zu diesem Speicherort in der Befehlszeile. Da ist ein netzwerkgebundenes Speichergerät (NAS) in dem Netzwerk, über das dieser Artikel recherchiert wurde.
Wir können den gleichen Trick verwenden, den wir zuvor verwendet haben, um den Pfad zum NAS zu identifizieren, indem wir die Maus über die Verbindung zu diesem Gerät in Nautilus bewegen.
Es gibt keine speziellen Optionen für die Sicherung über ein Netzwerk; Dies sind alles Optionen, die wir bereits genutzt haben.
rsync -ravz --partial /home/dave/Documents/ /media/dave/NAS/dave/backups/
Es gibt keinen Unterschied im Format der Ausgabe.
Es überrascht nicht, dass es eine signifikante Verbesserung der Bytes/Sek.-Zahl gibt.
Wenn wir laufen rsync
Wieder einmal können wir sehen, dass keine Dateien zu übertragen sind, weil keine Änderungen vorgenommen wurden, aber es werden immer noch einige Bytes hin und her übertragen. Dies ist die Datenmenge, die übertragen werden muss, um die Dateiliste auf dem Ziel mit der Dateiliste auf der Quelle zu vergleichen.
Das Beschleunigungsverhältnis ist in diesem Fall um eine Größenordnung besser. In der Praxis werden Ihre Leistungsverhältnisse irgendwo zwischen unseren beiden pseudo-künstlichen Werten liegen.
Verwenden von rsync über SSH
rsync
unterstützt die Sicherung über eine SSH-Verbindung. Wir müssen den Namen des Benutzerkontos und den SSH-Speicherort in der Befehlszeile angeben. Wir verwenden hier einen Netzwerknamen, aber Sie können auch eine IP-Adresse verwenden.
Beachten Sie das „:“ zwischen den SSH-Verbindungsdetails und dem Anfang des Netzwerkpfads auf dem Remote-Ziel.
rsync -ravz --partial /home/dave/Documents/ dave@sulaco.local:/home/dave/Backups/
Sie werden auf der Seite nach dem Passwort des Benutzerkontos gefragt Maschine. Dies ist nicht Ihr Passwort auf dem Quellcomputer.
Die Sicherung wird wie gewohnt abgeschlossen. Der Durchsatz ist aufgrund der Verschlüsselung und Entschlüsselung, die in der sicheren Shell-Verbindung stattfindet, nicht so schnell wie bei einer normalen Netzwerkverbindung.
Automatisieren Ihrer Backups
Wir können ganz einfach automatisierte Backups erstellen, indem wir Ihrer crontab-Datei Einträge hinzufügen.
crontab -e
Wir richten ein automatisches Backup ein, das jeden Tag um 04:30 Uhr ausgeführt wird (natürlich nur, wenn der Computer zu dieser Zeit eingeschaltet ist). Die Syntax für die rsync
Befehl ändert sich überhaupt nicht.
Strg+O schreibt Ihre Änderungen in die Datei und Strg+X schließt das nano
Editor.
Rsync ein freundliches Gesicht geben
Personen, die mit der Befehlszeile weniger vertraut sind, können eines von mehreren Programmen verwenden, die eine grafische Benutzeroberfläche (GUI) aktivieren rsync
. Zwei gute Beispiele sind glücklichBackup und Grsync. Beide Programme ermöglichen viele der rsync
Optionen, die über die Benutzeroberfläche ausgewählt werden können.
Die Grsync
Programm konzentriert sich darauf, ein visueller Wrapper für rync
. Es bietet einfachen Zugriff auf die rsync
Optionen und fügt nur eine begrenzte Anzahl neuer Funktionen hinzu.
Einer der Grsync-Einstellungsdialoge,
Die luckyBackup
Programm ist viel mehr als ein einfacher Wrapper für rsync
. Es ist ein Backup-Programm, das verwendet rsync
hinter den Kulissen. Zum Beispiel, luckyBackup
kann mehrere „Schnappschüsse“ Ihres Backups erstellen. Sie können dann zu den Versionen der Dateien in jedem der Snapshots zurückkehren.
Einer der LuckyBackup-Einstellungsdialoge.
So installieren Sie Grsync
Installieren Grsync
Verwenden Sie in Ubuntu diesen Befehl:
sudo apt-get install grsync
Installieren Grsync
Verwenden Sie in Fedora diesen Befehl:
sudo dnf install grsync
Installieren Grsync
Verwenden Sie in Manaro diesen Befehl:
sudo pacman -Syu grsync
So installieren Sie luckyBackup
Installieren luckyBackup
Verwenden Sie unter Ubuntu den folgenden Befehl:
sudo apt-get install luckybackup
Installieren luckyBackup
Verwenden Sie in Fedora den folgenden Befehl:
sudo dnf install luckybackup
In Manjaro müssen Sie installieren luckyBackup
von dem Arch-Benutzer-Repository (AUR). Sie können dies mit der pamac
Paket-Manager.
Gehen Sie kein Risiko ein, sichern Sie Ihre Daten oft
Backups sind absolut wichtig. Sichern Sie häufig, an vielen Orten und auf verschiedenen Medien. Sobald es eingerichtet ist, rsync
kann das alles für dich tun.