GNU/Linux >> LINUX-Kenntnisse >  >> Linux

Linux-Dateikomprimierung:Alles, was Sie wissen müssen

Die Komprimierung ist eine wichtige Informatiktechnik, die von Programmen, Diensten und Benutzern verwendet wird, um Platz zu sparen und die Dienstqualität zu verbessern. Wenn Sie beispielsweise ein Spiel über eine Spieleplattform herunterladen, wird im Allgemeinen eine komprimierte Version heruntergeladen, um Zeit und Platz zu sparen. Die Dekomprimierung erfolgt nach dem Herunterladen der Datei oder während des Installationsvorgangs.

Aber warum erzähle ich dir das alles? Nun, heute werde ich die Linux-Dateikomprimierung durchgehen und Ihnen alles zeigen, was Sie wissen müssen.

Komprimierung verstehen

Bevor wir fortfahren und mehr über die Linux-Komprimierung erfahren, wollen wir zunächst mehr über die Komprimierung erfahren.

Komprimierung ist eine Technik zur Reduzierung der Dateigröße auf einer bestimmten Festplatte unter Verwendung verschiedener mathematischer Berechnungen und Algorithmen. Der Hauptzweck der Komprimierung besteht darin, Platz zu sparen. Dies ist möglich, wie Dateien auf Festplattenlaufwerken gespeichert werden. Die Algorithmen oder mathematischen Berechnungen finden ein Muster und komprimieren diesen Teil davon, sodass er es mit wenig oder keinem Detailverlust zurückerzeugen kann. Kurz gesagt, der wiederholte Inhalt ebnet den Weg für eine funktionierende Komprimierung.

Es gibt zwei Arten der Komprimierung, die Sie kennen sollten. Sie sind verlustbehaftete und verlustfreie Komprimierung.

Verlustfreie Komprimierung

Es handelt sich um eine Komprimierungstechnik, bei der keine Informationen verloren gehen, und die eigentlichen Daten können aus der komprimierten Datei abgerufen werden. Die verlustbehaftete Komprimierung ist nützlich, um die Dateigröße zu reduzieren, ohne die Qualität der Originaldatei zu verlieren.

Verlustbehaftete Komprimierung

Auf der anderen Seite gibt es eine verlustbehaftete Komprimierungstechnik, die eine Datei komprimiert, um Speicherplatz zu sparen, aber die komprimierte Datei kann nicht verwendet werden, um den ursprünglichen Dateiinhalt abzurufen. In diesem Fall gehen Informationen verloren.

Um dies zu verstehen, gehen wir ein Beispiel durch. Sie können ein Rohbild aufnehmen und dann im verlustbehafteten und verlustfreien Modus komprimieren. Bei der verlustfreien Komprimierung wird die Bildgröße leicht verringert, und Sie können das Originalbild zurückbehalten, wenn Sie das Bild dekomprimieren. In den meisten Fällen wird ein PNG-Format zur verlustfreien Komprimierung verwendet. Wenn Sie jedoch die verlustbehaftete Komprimierung verwenden, erhalten Sie eine Bildausgabe, die nicht auf das Original zurückgesetzt werden kann. In diesem Fall ist das resultierende Bild ein JPEG/JPG-Format.

Die Komprimierungsalgorithmen sind in ihrer Art hervorragend und bieten dem Benutzer einen Mehrwert. Die neueren Algorithmen verwenden eine adaptive Methode, bei der sie in ihrer Komprimierungstechnik schneller und genauer sind.

Unterschiedliche Methoden zum Komprimieren von Dateien unter Linux

Um die Komprimierung unter Linux zu verstehen, müssen wir zunächst eine Datei zum Testen von Komprimierungsmethoden erstellen. Dazu können wir mit dem folgenden Verfahren zufällig eine Datei generieren.

base64 /dev/urandom | head -c 3000000 > mynewfile.txt

Um die Größe der neu erstellten Datei zu erfahren, können Sie den folgenden Befehl ausführen.

ls -l --block-size=MB

Sie können die Dateigröße auch überprüfen, indem Sie den Datei-Explorer verwenden und die Dateigröße in seinen Eigenschaften überprüfen.

Lassen Sie uns mehrere Kopien der Datei erstellen, damit wir sie zum Testen von Komprimierungstechniken verwenden können.

Die Gesamtgröße des Ordners, in dem die Dateien gespeichert werden, beträgt 150 MB.

Zip-Komprimierung

Eine der Standardkomprimierungstechniken, die Sie in Linux finden, ist die Zip-Komprimierungstechnik. Um den Zip-Befehl für die Dateien auszuführen, die wir haben, müssen Sie den folgenden Befehl ausführen.

zip <output>.zip <input>

Um also die fünf Dateien, die wir in dem Ordner haben, zu komprimieren, müssen wir den folgenden Befehl ausführen.

zip testing1.zip *

Es dauert einige Zeit, bis der Befehl ausgeführt wird, und Sie werden es vor Ihren Augen sehen.

Wie Sie sehen können, wurde jede der Dateien um 24 % reduziert. Bei 24 % Ersparnis liegt die endgültige Größe bei 114 MB. Das ist ziemlich gut. Das Ergebnis wäre anders ausgefallen, wenn wir zusätzliche Quelldateien verwendet hätten. Eine weitere Sache, die Ihnen aufgefallen wäre, ist, dass es die Deflate-Komprimierungstechnik verwendet.

Um die Datei zu dekomprimieren, müssen Sie den folgenden Befehl verwenden.

entpacken Sie .zip -d

Wie Sie sehen, können Sie ein Ziel festlegen. Sie können auch in denselben Ordner entpacken, indem Sie einfach den Befehl ohne den Zielparameter verwenden.

Gzip-Komprimierung

Nachdem wir die Zip-Komprimierung durchlaufen haben, ist es nun an der Zeit für die GNU Zip- oder gzip-Komprimierung. Es ist auch eine beliebte Methode, um die Dateien unter Linux zu komprimieren. Jean-Loup Gailly und Mark Adler schaffen es.

Außerdem ist es besser als die Zip-Komprimierungsmethode, da es eine bessere Komprimierung bietet. Die Syntax zur Verwendung der Gzip-Komprimierung lautet wie folgt.

gzip <option> <input>

Um die vorhandenen Dateien zu komprimieren, müssen wir den folgenden Befehl verwenden.

gzip -v mynewfile1.txt

Dadurch wird die Datei "mynewfile1.txt" komprimiert und dann "mynewfile1.txt.gz" genannt.

Die endgültige Größe der Datei beträgt 22,8 MB, was eine ziemlich beeindruckende Komprimierung ist.

Sie können auch den gesamten Ordner komprimieren, indem Sie das rekursive Flag -r verwenden. Die Syntax dafür lautet wie folgt:

gzip -r <folder_path>

Sie können auch die Komprimierungsstufe für Gzip anpassen. Der Wert der Komprimierungsstufe kann von 1 bis 9 eingestellt werden. 1 steht für die schnellste und geringste Komprimierung, während neun für die langsamste Komprimierung, aber beste Komprimierung steht.

gzip -v -9 mynewfile1.txt

Um die gzip-Datei zu entpacken, müssen Sie den folgenden Befehl verwenden.

gzip -d <gzip_file>

Bzip2-Komprimierung

Der letzte Komprimierungstyp, den wir besprechen werden, ist Bzip2. Es ist ein Open-Source- und kostenloses Tool. Es verwendet den Burrows-Wheeler-Algorithmus.

Die Komprimierungstechnik ist ziemlich alt, da sie erstmals 1996 eingeführt wurde. Sie können Bzip2 in Ihrer täglichen Arbeit verwenden. Es ist schnell und funktioniert ähnlich wie das gzip-Tool. Die Syntax für die Bzip2-Komprimierungstechnik lautet wie folgt:

bzip2 <option> <input>

Versuchen wir, die Datei mit bzip2 zu komprimieren.

Genau wie bei gzip können Sie auch die Stärke der Komprimierung von 1 bis 9 einstellen.

Um die Datei zu dekomprimieren, müssen Sie den folgenden Befehl verwenden.

bzip2 -d <filename>

Archiv

Es gibt noch einen weiteren wichtigen Begriff, den wir hier lernen müssen.

Archivieren ist die Methode zum Sichern von Daten an einem sicheren Ort unter Verwendung eines komprimierten Formats (im Allgemeinen). Auf dem Linux-Server finden Sie die Dateierweiterung tar, was bedeutet, dass es sich um eine archivierte Datei handelt. Das tar-Format eignet sich hervorragend, wenn es darum geht, verschiedene Dateien zu manipulieren und zu adressieren. Es kann Metadaten und Berechtigungen intakt halten und wird daher hauptsächlich zu Archivierungszwecken auf Linux-Systemen verwendet.

Die tar-Befehlssyntax ist wie folgt.

tar <option> <output_file> <input>

Zum Extrahieren müssen Sie den folgenden Befehl verwenden.

tar -xvf <archieved-file-name>

Schlussfolgerung

Dies führt uns zum Ende unseres Linux-Komprimierungsleitfadens. Wie Sie sehen, gibt es viele Möglichkeiten zur Dateikomprimierung. Auch der Archivierungsprozess hat seinen einzigartigen Nutzen. Was halten Sie also von der Linux-Dateikomprimierung? Benutzt du es viel? Lass es uns unten in den Kommentaren wissen.


Linux
  1. Linux-tmp-Verzeichnis:Alles, was Sie wissen müssen

  2. Linux-Dateiberechtigungen:Alles, was Sie wissen müssen

  3. Swapiness unter Linux:Alles, was Sie wissen müssen

  4. Linux – Alles ist eine Datei?

  5. Alles, was Sie über das Linux-Dateisystem wissen müssen

Alles, was Sie über die Linux Mint-Distribution wissen müssen

Alles, was Sie über Inodes in Linux wissen müssen

Alles Wichtige, was Sie über Hard Link in Linux wissen müssen

Alles Wichtige, was Sie über UID in Linux wissen müssen

Alles, was Sie über das Linux /tmp-Verzeichnis wissen müssen

Hardlinks und Softlinks in Linux:Alles, was Sie wissen müssen