Wie die meisten modernen Linux-Distributionen enthält Ubuntu standardmäßig viele Tools für jeden Bedarf. Darunter befindet sich ein Archiv-Manager, mit dem Sie Dateien in komprimierten Paketen speichern können. Es gibt jedoch ein kleines Problem: Sie sind möglicherweise immer noch zu groß für das, was Sie brauchen. In solchen Fällen ist es am besten, die Datei zu komprimieren und in kleinere Teile aufzuteilen.
Obwohl Ubuntu mit den Tools ausgestattet ist, um genau das zu tun, ist der Archivmanager leider nicht der beste für solche Aufgaben. Dann müssen Sie sich an das Terminal wenden. Zum Glück ist der Vorgang einfach und Sie können Ihre Dateien mit einem einzigen Befehl komprimieren und in kleinere Teile aufteilen. Mal sehen wie.
Kennen Sie Ihre Kompression
Bevor wir beginnen, müssen wir etwas über alle Formen der Komprimierung erklären, die Ihnen wertvolle Zeit sparen: Sie stapelt sich nicht.
Damit meinen wir, dass Sie bei einer Reihe stark komprimierter Dateien nicht viel gewinnen, wenn Sie sie mit einer anderen Art der Komprimierung erneut komprimieren. Angenommen, Sie möchten Dateien wie bereits stark komprimierte JPG-Bilder, MP4-Videodateien oder andere komprimierte Archive freigeben. In diesem Fall macht es keinen Sinn, die höchsten verfügbaren Komprimierungseinstellungen zu verwenden. Es ist besser, sie (ohne Komprimierung) in einem Archiv zu speichern.
Bei unkomprimierten oder leicht komprimierten Dateien wie TXT-Dateien, großen Datenbanken oder unkomprimierten Medien können bei Verwendung der höchsten Komprimierungseinstellung jedoch radikal kleinere Dateien erzeugt werden.
Der klassische Linux-Ansatz
Angenommen, Sie möchten eine Datei wie die hier verwendete Windows 10-ISO komprimieren. Sie können sich den klassischen Werkzeugen wie zuwenden tar
, split
, und bzip
um es zu komprimieren und in kleinere Dateien aufzuteilen.
1. Starten Sie Ihr Terminal. Der schnelle Weg ist durch Drücken STRG + ALT + T.. Wechseln Sie dann zu dem Ordner, in dem sich die große Datei befindet, die Sie in einem geteilten Archiv speichern möchten. Um die Dinge sauber zu halten, erstellen Sie einen Unterordner namens “split”, in dem wir das geteilte Archiv speichern, mit:
mkdir split
Geben Sie es dann ein mit:
cd split
- Verwenden Sie den folgenden Befehl, um Ihre Datei oder Ihren Ordner in ein geteiltes Archiv zu komprimieren:
tar -cvj FILENAME | split -b SIZE_OF_PARTS -d - "BASE NAME OF ARCHIVE"
Für unsere Windows 10 ISO sah unser Befehl folgendermaßen aus:
tar -cvj ~/Data/Windows10.iso | split -b 50m -d - "Windows10_ISO.tar.bz."
- “~ / Data / Windows10.iso” ist der Pfad und Dateiname der Datei, die wir komprimieren wollten.
-
split -b 50m
gibt an, dass wir unser Archiv in 50-MB-Teile aufteilen möchten. Ändern Sie diesen Wert entsprechend der gewünschten Größe. -
Windows10_ISO.tar.bz.
ist der Dateiname der geteilten Archivdateien. Beachten Sie, dass am Ende ein zusätzlicher Punkt steht. Das liegt daran, dass jeder Block am Ende auch eine Nummer hat, die seine Position in der Sequenz widerspiegelt.
Abhängig von der Größe der zu komprimierenden Dateien und der Geschwindigkeit Ihres Computers finden Sie bald darauf die Teile Ihres geteilten Archivs im geteilten Unterordner.
Wenn Sie ihre kollektive Größe überprüfen, ist sie kleiner als ihre unkomprimierte Summe.
Um Ihre Originaldateien wiederherzustellen, müssen Sie zunächst alle Teile in einem einzigen Archiv zusammensetzen mit:
cat BASE_NAME_OF_PARTS.* > BASE_NAME_OF_PARTS.bz
Extrahieren Sie dann den Inhalt mit:
tar -xvj REASSEMBLED_ARCHIVE.bz
In unserem Fall würden die beiden obigen Befehle folgendermaßen aussehen:
cat Windows10_ISO.tar.bz.* tar -xvj Windows10_ISO.tar.bz
Wir können es jedoch besser machen, wenn wir ein neueres Komprimierungswerkzeug verwenden, wie Sie als Nächstes sehen werden.
Die moderne Hochkompressionslösung
7Zip ist ein moderner Archivierer, der hohe Komprimierungsraten bietet und auch Unterstützung für geteilte Archive bietet. Somit ist es eine bessere Lösung für die anstehende Aufgabe. Ubuntu kommt jedoch nicht mit. Verwenden Sie zum Installieren der Linux-Version p7zip:
sudo apt install p7zip-full
Das Komprimieren Ihrer Dateien in einem geteilten Archiv ist damit noch einfacher als die Standardlösung, die wir zuvor gesehen haben. Sie müssen nur die Größe jeder geteilten Datei, den Dateinamen des Basisarchivs und das, was Sie komprimieren möchten, angeben mit:
7z -vSIZE_OF_SPLIT_FILES a ARCHIVE_FILENAME FILE_TO_COMPRESS
In unserem Beispiel für Windows 10 ISO sieht der Befehl folgendermaßen aus, um es in einem mehrteiligen Archiv zu komprimieren, in dem jedes Teil eine Größe von 50 MB hat.
7z -v50m a Windows10_iso.7z ~/Data/Windows10.iso
Nach einer Weile finden Sie die Ergebnisse im geteilten Unterordner, und sie nehmen weniger Größe an, als wenn Sie den zuvor gesehenen tar-split-bzip-Ansatz verwendet hätten.
Um Ihre Dateien zurückzubekommen, extrahieren Sie nur die erste Datei der Sequenz, und 7z führt den Rest automatisch durch:
7z e FIRST_PART_OF_COMPRESSED_ARCHIVE
In unserem Beispiel war dies:
7z e Windows10_iso.7z.001
Es ist auch erwähnenswert, dass Sie heutzutage viel mehr Optionen zum Erstellen komprimierter Archive mit Tools wie pigz oder plzip zur Verfügung haben.
Finden Sie komprimierte geteilte Archive praktisch? Mit welchen Komprimierungswerkzeugen arbeiten Sie damit? Sagen Sie es uns in den Kommentaren unten.
Verbunden:
- So komprimieren und extrahieren Sie Dateien auf Android mit ZArchiver
- So komprimieren Sie Archive mit allen CPU-Kernen mit Tar
- So vereinfachen Sie die 7z-Komprimierung mit Bash-Aliasen