Btrfs

So sparen Sie Speicherplatz mit Btrfs-Deduplizierung

So sparen Sie Speicherplatz mit Btrfs-Deduplizierung
Deduplizierung ist eine Softwarefunktion, die verwendet wird, um doppelte Datenblöcke (redundante Datenblöcke) aus einem Dateisystem zu entfernen, um Speicherplatz zu sparen. Das Btrfs-Dateisystem ist ein modernes Copy-on-Write (CoW)-Dateisystem, das Deduplizierung unterstützt.

Wenn Sie viele redundante Daten aufbewahren müssen (z.e., Datei-Backups, Datenbank) auf Ihrem Computer, dann kann die Copy-on-Write (CoW)- und Deduplizierungsfunktion des Btrfs-Dateisystems eine Menge Speicherplatz sparen.

In diesem Artikel zeige ich Ihnen, wie Sie mit der Btrfs-Deduplizierungsfunktion Speicherplatz sparen. Also lasst uns anfangen.

Voraussetzungen:

Um die Beispiele dieses Artikels auszuprobieren,

Ich habe eine 20 GB Festplatte sdb auf meinem Ubuntu-Rechner. Ich habe 2 Partitionen erstellt sdb1 und sdb2, auf dieser Festplatte. Ich werde die Partition verwenden sdb1 In diesem Artikel.

$ sudo lsblk -e7

Ihre Festplatte oder SSD kann einen anderen Namen haben als meine, ebenso die Partitionen. Stellen Sie also sicher, dass Sie sie von nun an durch Ihre ersetzen.

Wenn Sie Hilfe bei der Installation des Btrfs-Dateisystems unter Ubuntu benötigen, lesen Sie meinen Artikel Installieren und verwenden Sie Btrfs unter Ubuntu 20.04 LTS.

Wenn Sie Hilfe bei der Installation des Btrfs-Dateisystems auf Fedora benötigen, lesen Sie meinen Artikel Installieren und verwenden Sie Btrfs auf Fedora 33.

Erstellen eines Btrfs-Dateisystems:

Um mit der Datenkomprimierung auf Btrfs-Dateisystemebene zu experimentieren, müssen Sie ein Btrfs-Dateisystem erstellen.

So erstellen Sie ein Btrfs-Dateisystem mit dem Label Daten auf der sdb1 Partition, führen Sie den folgenden Befehl aus:

$ sudo mkfs.btrfs -L Daten /dev/sdb1

Mounten Sie ein Btrfs-Dateisystem:

Erstellen Sie ein Verzeichnis /Daten mit folgendem Befehl:

$ sudo mkdir -v /data

So mounten Sie das Btrfs-Dateisystem, das auf dem erstellt wurde sdb1 Partition auf der /Daten Verzeichnis, führen Sie den folgenden Befehl aus:

$ sudo mount /dev/sdb1 /data

Das Btrfs-Dateisystem sollte gemountet sein, wie Sie im Screenshot unten sehen können.

$ df -h /data

Installieren von Deduplizierungstools unter Ubuntu 20.04 LTS:

Um ein Btrfs-Dateisystem zu deduplizieren, müssen Sie das duperentfernen Programm auf Ihrem Computer.

Wenn Sie Ubuntu 20 verwenden.04 LTS, dann können Sie installieren duperentfernen aus dem offiziellen Paket-Repository von Ubuntu.

Aktualisieren Sie zunächst den Cache des APT-Paket-Repositorys mit dem folgenden Befehl:

$ sudo apt-Update

Installiere das duperentfernen Paket mit folgendem Befehl:

$ sudo apt install duperemove -y

Das duperentfernen Paket sollte installiert werden.

Deduplizierungstools auf Fedora 33 installieren:

Um ein Btrfs-Dateisystem zu deduplizieren, müssen Sie das duperentfernen Programm auf Ihrem Computer.

Wenn Sie Fedora 33 verwenden, können Sie es installieren duperentfernen aus dem offiziellen Paket-Repository von Fedora.

Aktualisieren Sie zunächst den DNF-Paket-Repository-Cache mit dem folgenden Befehl:

$ sudo dnf makecache

Installiere das duperentfernen Paket mit folgendem Befehl:

$ sudo dnf installiere duperemove

Um die Installation zu bestätigen, drücken Sie Ja und drücke dann .

Das duperentfernen Paket sollte installiert werden.

Testen der Deduplizierung auf einem Btrfs-Dateisystem:

In diesem Abschnitt werde ich einen einfachen Test durchführen, um Ihnen zu zeigen, wie die Deduplizierungsfunktion des Btrfs-Dateisystems redundante Daten aus dem Dateisystem entfernt und Speicherplatz spart.

Wie du siehst,

  1. Ich habe eine Datei kopiert QGIS-OSGeo4W-3.14.0-1-Setup-x86_64.exe zum /Daten Verzeichnis. Die Datei ist 407 MB in Größe.
  2. Die auf dem gespeicherte Datei /Daten Verzeichnis ist 407 MB groß.
  3. Nur die Datei verbraucht ca 412 MB des Festplattenspeichers aus dem Btrfs-Dateisystem, das auf dem /Daten Verzeichnis.

Wie du siehst,

  1. Ich habe die gleiche Datei in die kopiert /Daten Verzeichnis und umbenannt in QGIS-OSGeo4W-3.14.0-1-Setup-x86_64.2.exe.
  2. Die auf dem gespeicherte Datei /Daten Verzeichnis ist jetzt 814 MB in Größe.
  3. Die verbrauchten Dateien ca 820 MB des Festplattenspeichers aus dem Btrfs-Dateisystem, das auf dem /Daten Verzeichnis.

So führen Sie die Deduplizierungsoperation auf dem Btrfs-Dateisystem durch, das auf dem /Daten Verzeichnis, führen Sie den folgenden Befehl aus:

$ sudo duperemove -dr /data

Die redundanten Datenblöcke aus dem Btrfs-Dateisystem, die auf dem /Daten Verzeichnis sollte entfernt werden.

Wie du siehst,

  1. Ich habe die Dateien QGIS-OSGeo4W-3.14.0-1-Setup-x86_64.exe und QGIS-OSGeo4W-3.14.0-1-Setup-x86_64.2.exe im /Daten Verzeichnis.
  2. Die auf dem gespeicherte Datei /Daten Verzeichnis ist jetzt 814 MB in Größe.
  3. Die verbrauchten Dateien ca 412 MB des Festplattenspeichers aus dem Btrfs-Dateisystem, das auf dem /Daten Verzeichnis.

Das duperentfernen Programm hat redundante (doppelte) Datenblöcke aus dem Btrfs-Dateisystem entfernt, das auf dem /Daten Verzeichnis und hat viel Speicherplatz gespart.

Automatisches Mounten eines Btrfs-Dateisystems beim Booten:

Um das von Ihnen erstellte Btrfs-Dateisystem zu mounten, müssen Sie die UUID des Btrfs-Dateisystems kennen.

Sie finden die UUID des Btrfs-Dateisystems, das auf dem /Daten Verzeichnis mit folgendem Befehl:

$ sudo btrfs filesystem show /data

Wie Sie sehen können, ist die UUID des Btrfs-Dateisystems, das ich beim Booten mounten möchte, e39ac376-90dd-4c39-84d2-e77abb5e3059. Bei dir wird es anders sein. Stellen Sie also sicher, dass Sie es von nun an durch Ihres ersetzen.

Öffne das /etc/fstab Datei mit dem nano Texteditor wie folgt:

$ sudo nano /etc/fstab

Geben Sie die folgende Zeile am Ende des ein /etc/fstab Datei:

UUID=e39ac376-90dd-4c39-84d2-e77abb5e3059 /data btrfs defaults 0 0

HINWEIS: Ersetzen Sie die UUID des Btrfs-Dateisystems durch Ihre. Ändern Sie auch die Mount-Option und den Komprimierungsalgorithmus nach Belieben.

Wenn Sie fertig sind, drücken Sie + X gefolgt von Ja und um die zu retten /etc/fstab Datei.

Damit die Änderungen wirksam werden, starten Sie Ihren Computer mit dem folgenden Befehl neu:

$ sudo Neustart

Sobald Ihr Computer bootet, sollte das Btrfs-Dateisystem im /Datenverzeichnis, wie Sie im Screenshot unten sehen können.

$ df -h /data

Führen Sie automatisch Deduplizierung mit Cron-Job durch:

Um redundante Daten aus dem Btrfs-Dateisystem zu entfernen, müssen Sie den duperentfernen ab und zu befehlen.

Sie können die automatisch ausführen duperentfernen Befehl stündlich, täglich, wöchentlich, monatlich, jährlich oder beim Booten mit einem Cron-Job.

Finden Sie zuerst den vollständigen Pfad des duperentfernen Befehl mit folgendem Befehl:

$ die duperemove

Wie Sie sehen können, ist der vollständige Weg der duperentfernen Befehl ist /usr/bin/duperemove. Merken Sie sich den Pfad, da Sie ihn später brauchen werden.

Führen Sie den folgenden Befehl aus, um die crontab-Datei zu bearbeiten:

$ sudo crontab -e

Wählen Sie einen Texteditor aus, der Ihnen gefällt, und drücken Sie .

Ich werde die verwenden nano Texteditor. Also tippe ich ein 1 und drücke .

Die crontab-Datei sollte geöffnet werden.

Um die auszuführen duperentfernen Befehl auf dem /Daten Verzeichnis jede Stunde, fügen Sie die folgende Zeile am Ende der crontab-Datei hinzu.

@hourly /usr/bin/duperemove -dr /data >> /var/log/duperemove.Log

Um die auszuführen duperentfernen Befehl auf dem /Daten Verzeichnis jeden Tag die folgende Zeile am Ende der crontab-Datei hinzufügen.

@daily /usr/bin/duperemove -dr /data >> /var/log/duperemove.Log

Um die auszuführen duperentfernen Befehl auf dem /Daten Verzeichnis jede Woche die folgende Zeile am Ende der crontab-Datei hinzufügenab.

@weekly /usr/bin/duperemove -dr /data >> /var/log/duperemove.Log

Um die auszuführen duperentfernen Befehl auf dem /Daten fügen Sie jeden Monat die folgende Zeile am Ende der crontab-Datei hinzu.

@monatlich /usr/bin/duperemove -dr /data >> /var/log/duperemove.Log

Um die auszuführen duperentfernen Befehl auf dem /Daten Verzeichnis jedes Jahr die folgende Zeile am Ende der crontab-Datei hinzufügenab.

@jährlich /usr/bin/duperemove -dr /data >> /var/log/duperemove.Log

Um die auszuführen duperentfernen Befehl auf dem /Daten Verzeichnis beim Booten, fügen Sie die folgende Zeile am Ende der crontab-Datei hinzu.

@reboot /usr/bin/duperemove -dr /data >> /var/log/duperemove.Log

HINWEIS: ich werde das laufen lassen duperentfernen Befehl beim Booten in diesem Artikel.

Wenn Sie fertig sind, drücken Sie + X gefolgt von Ja und um die crontab-Datei zu speichern.

Ein neuer Cronjob sollte installiert werden.

Damit die Änderungen wirksam werden, starten Sie Ihren Computer mit dem folgenden Befehl neu:

$ sudo Neustart

Als die duperentfernen Befehl läuft im Hintergrund, die Ausgabe des Befehls wird im /var/log/duperemove.Log Datei.

$ sudo ls -lh /var/log/duperemove*

Wie Sie sehen können, ist die /var/log/duperemove.Log Datei enthält die duperentfernen Logdaten. Es bedeutet, dass der Cron-Job einwandfrei funktioniert.

Fazit:

In diesem Artikel habe ich Ihnen gezeigt, wie Sie die duperentfernen Brtfs-Deduplizierungstool unter Ubuntu 20.04 LTS und Fedora 33. Ich habe Ihnen auch gezeigt, wie Sie die Btrfs-Deduplizierung mit dem duperemove-Tool durchführen und das duperemove-Tool automatisch mit einem Cron-Job ausführen.

Steuern und verwalten Sie Mausbewegungen zwischen mehreren Monitoren in Windows 10
Dual-Display-Maus-Manager lässt Sie die Mausbewegung zwischen mehreren Monitoren steuern und konfigurieren, indem Sie ihre Bewegungen in der Nähe der ...
Mit WinMouse können Sie die Mauszeigerbewegung auf einem Windows-PC anpassen und verbessern improve
Wenn Sie die Standardfunktionen Ihres Mauszeigers verbessern möchten, verwenden Sie Freeware WinMouse. Es fügt weitere Funktionen hinzu, damit Sie das...
Linker Mausklick funktioniert nicht unter Windows 10
Wenn Sie eine dedizierte Maus mit Ihrem Laptop oder Desktop-Computer verwenden, aber die linker Mausklick funktioniert nicht unter Windows 10/8/7 aus ...