Linux/Datei/komprimierenArchivieren: Unterschied zwischen den Versionen

Aus Foxwiki
Die Seite wurde neu angelegt: „=== Dateien komprimieren/archivieren === Dateien in Archive zu verpacken und ihre Größe durch Kompressionsalgorithmen zu verkleinern ist ein häufiger Vorgan…“
 
K Textersetzung - „Man-Pages“ durch „Man-Page“
 
(47 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt)
Zeile 1: Zeile 1:
=== Dateien komprimieren/archivieren ===
'''Datei archivieren und komprimieren''' - Dateien zu Archiven zusammenfassen und Dateigröße verringern
Dateien in Archive zu verpacken und ihre Größe durch Kompressionsalgorithmen zu verkleinern ist ein häufiger Vorgang in der Datenverarbeitung. Grundsätzlich unterscheidet man zwischen Archiven und komprimierten Dateien.


Ein Archiv ist ein unkomprimierter Behälter für Dateien. Dieses Archiv kann durch Kompressionsverfahren komprimiert werden. Es gibt allerdings ein paar Formate, die gleich auch eine Komprimierung beinhalten.
== Beschreibung ==
Dateien in Archive zu verpacken und ihre Größe durch Kompressionsalgorithmen zu verkleinern ist ein häufiger Vorgang in der Datenverarbeitung


==== Archivformate ====
; Archiven und komprimierte Dateien
Es gibt sehr viele verschiedene Formate zum Komprimieren von Daten. Soweit bekannt, lassen sich sämtliche Formate unter Linux benutzen, zumindest jedoch kann man die Dateien öffnen (entpacken). Bekannte Formate unter Linux/Unix sind folgende:* [http://wiki.ubuntuusers.de/gzip gzip] - Kurze Laufzeit, Endung '''.gz'''  
* Ein Archiv ist ein unkomprimierter Behälter für Dateien
* Dieses Archiv kann durch Kompressionsverfahren komprimiert werden
* Es gibt allerdings ein paar Formate, die gleich auch eine Komprimierung beinhalten
 
== Archivformate ==
Es gibt sehr viele verschiedene Formate zum Komprimieren von Daten
* Soweit bekannt, lassen sich sämtliche Formate unter Linux benutzen, zumindest jedoch kann man die Dateien öffnen (entpacken)
 
Bekannte Formate unter Linux/Unix sind folgende
* [http://wiki.ubuntuusers.de/gzip gzip] - Kurze Laufzeit, Endung '''.gz'''
* [http://wiki.ubuntuusers.de/bzip2 bzip2] - Hohe Kompressionsrate, Endung '''.bz2'''
* [http://wiki.ubuntuusers.de/bzip2 bzip2] - Hohe Kompressionsrate, Endung '''.bz2'''
* [http://de.wikipedia.org/wiki/Xz xz] - Neueres, 7z ähnliches Format, Endung '''.xz'''
* [http://de.wikipedia.org/wiki/Xz xz] - Neueres, 7z ähnliches Format, Endung '''.xz'''


Hierbei ist zu beachten, dass unter Linux erst die oft genutzte Kombination aus dem Archivprogramm [http://wiki.ubuntuusers.de/tar tar] und einer Kompression mittels gzip oder bzip2 ein komprimiertes Archiv ergibt. '''.tar.gz'''oder '''.tar.bz2'''-Dateien sind also '''.tar''' Archive, die mit dem entsprechenden Kompressionsverfahren komprimiert wurden.
Hierbei ist zu beachten, dass unter Linux erst die oft genutzte Kombination aus dem Archivprogramm [http://wiki.ubuntuusers.de/tar tar] und einer Kompression mittels gzip oder bzip2 ein komprimiertes Archiv ergibt. '''.tar.gz'''oder '''.tar.bz2'''-Dateien sind also '''.tar''' Archive, die mit dem entsprechenden Kompressionsverfahren komprimiert wurden


Unter Windows sind vor allem die folgenden Formate gebräuchlich, die sich aber auch unter Linux benutzen lassen:* [http://de.wikipedia.org/wiki/ZIP_%28Dateiformat%29 ZIP] - Das wohl bekannteste Packformat, gleichzeitig auch die Dateiendung '''.zip'''  
; MS-Windows
Unter Windows sind vorwiegend die folgenden Formate gebräuchlich, die sich aber auch unter Linux benutzen lassen
* [http://de.wikipedia.org/wiki/ZIP_%28Dateiformat%29 ZIP] - Das wohl bekannteste Packformat, gleichzeitig auch die Dateiendung '''.zip'''
* [http://de.wikipedia.org/wiki/RAR_%28Dateiformat%29 RAR] - Bekanntes Dateiformat, gleichzeitig auch die Dateiendung '''.rar'''
* [http://de.wikipedia.org/wiki/RAR_%28Dateiformat%29 RAR] - Bekanntes Dateiformat, gleichzeitig auch die Dateiendung '''.rar'''
* [http://de.wikipedia.org/wiki/ACE_%28Dateiformat%29 ACE] - ACE Packformat, sehr leistungsfähig, gleichzeitig auch die Dateiendung '''.ace'''  
* [http://de.wikipedia.org/wiki/ACE_%28Dateiformat%29 ACE] - ACE Packformat, sehr leistungsfähig, gleichzeitig auch die Dateiendung '''.ace'''
* [http://de.wikipedia.org/wiki/7z 7z] - Freies Packformat, sehr leistungsfähig und quelloffen. Dateiendung '''.7z'''  
* [http://de.wikipedia.org/wiki/7z 7z] - Freies Packformat, sehr leistungsfähig und quelloffen
* Dateiendung '''.7z'''


Welches Format man wählt hängt vom Verwendungszweck ab. Möchte man Mails auf einem Server im laufenden Betrieb komprimieren dann sollte der Prozess den Server nicht zu stark beanspruchen damit der Mailverkehr nicht beeinträchtigt wird.
Welches Format man wählt hängt vom Verwendungszweck ab
* Möchte man Mails auf einem Server im laufenden Betrieb komprimieren dann sollte der Prozess den Server nicht zu stark beanspruchen damit der Mailverkehr nicht beeinträchtigt wird


Hat man jedoch nur sehr wenig Platz so kann man eine stärkere Komprimierung wählen, dies benötigt jedoch auch mehr Leistung und dauert länger. Der folgende Test samt Auflistung stammt aus dem Artikel [http://wiki.ubuntuusers.de/qt4-fsarchiver qt4-fsarchiver] und soll ein Gefühl für Komprimierung und Geschwindigkeit vermitteln.
Hat man jedoch nur sehr wenig Platz so kann man eine stärkere Komprimierung wählen, dies benötigt jedoch auch mehr Leistung und dauert länger
* Der folgende Test samt Auflistung stammt aus dem Artikel [http://wiki.ubuntuusers.de/qt4-fsarchiver qt4-fsarchiver] und soll ein Gefühl für Komprimierung und Geschwindigkeit vermitteln


Für den gesamtem Test lagen folgende Bedingungen zu Grunde: * Quellmedium: ganze Partition
Für den gesamtem Test lagen folgende Bedingungen zu Grunde
* Quellmedium: ganze Partition
* Partitionstyp: Kubuntu Lucid '''root'''-Partition (breit gestreute Datenformate); ohne das '''/home''' Verzeichnis (liegt in separater Partition)
* Partitionstyp: Kubuntu Lucid '''root'''-Partition (breit gestreute Datenformate); ohne das '''/home''' Verzeichnis (liegt in separater Partition)
* Partitionsgröße: 15 GiB; tatsächlicher Dateninhalt 4,43 GiB; 189807 Dateien und Verzeichnisse
* Partitionsgröße: 15 GiB; tatsächlicher Dateninhalt 4,43 GiB; 189807 Dateien und Verzeichnisse


{| class="wikitable sortable"
{| class="wikitable sortable"
|-  
|-
| colspan="4" | Kompressionsübersicht  
| colspan="4" | Kompressionsübersicht
|-
|-
| | Modus/Stufe  
| | Modus/Stufe
| | Komprimierte Größe (~ GiB)  
| | Komprimierte Größe (~ GiB)
| align=center | Zeitaufwand  
| align=center | Zeitaufwand
| align=center | Ersparnis in ~ %  
| align=center | Ersparnis in ~ %
|-
|-
| | lzo (keine Unterstufen)  
| | lzo (keine Unterstufen)
| | 2.141.695.938 Byte (1.99 GiB)  
| | 2.141.695.938 Byte (1.99 GiB)
| align=center | 11 min 12 Sek  
| align=center | 11 min 12 Sek
| align=center | 55,1  
| align=center | 55,1
|-
|-
| | gzip fast  
| | gzip fast
| | 1.822.273.889 Byte (1.7 GiB)  
| | 1.822.273.889 Byte (1.7 GiB)
| align=center | 12min 11 Sek  
| align=center | 12min 11 Sek
| align=center | 61,6  
| align=center | 61,6
|-
|-
| | gzip standard  
| | gzip standard
| | 1.695.248.687 Byte (1.58 GiB)  
| | 1.695.248.687 Byte (1.58 GiB)
| align=center | 12 min 49 Sek  
| align=center | 12 min 49 Sek
| align=center | 64,3  
| align=center | 64,3
|-
|-
| | gzip best  
| | gzip best
| | 1.688.266.397 Byte (1,57 GiB)  
| | 1.688.266.397 Byte (1,57 GiB)
| align=center | 23 min 52 Sek  
| align=center | 23 min 52 Sek
| align=center | 64,6  
| align=center | 64,6
|-
|-
| | bzip2 fast  
| | bzip2 fast
| | 1.660.019.964 Byte (1,55 GiB)  
| | 1.660.019.964 Byte (1,55 GiB)
| align=center | 26 min 11 Sek  
| align=center | 26 min 11 Sek
| align=center | 65  
| align=center | 65
|-
|-
| | bzip2 good  
| | bzip2 good
| | 1.637.605.954 Byte (1,53 GiB)  
| | 1.637.605.954 Byte (1,53 GiB)
| align=center | 28 min 23 Sek  
| align=center | 28 min 23 Sek
| align=center | 65,5  
| align=center | 65,5
|-
|-
| | lzma fast  
| | lzma fast
| | 1.597.604.088 Byte (1,49 GiB)  
| | 1.597.604.088 Byte (1,49 GiB)
| align=center | 19 min 19 Sek  
| align=center | 19 min 19 Sek
| align=center | 66,4  
| align=center | 66,4
|-
|-
| | lzma medium  
| | lzma medium
| | 1.480.208.664 Byte (1,38 GiB)  
| | 1.480.208.664 Byte (1,38 GiB)
| align=center | 59 min 4 Sek  
| align=center | 59 min 4 Sek
| align=center | 68,8  
| align=center | 68,8
|-
|-
| | lzma best  
| | lzma best
| | 1.461.640.213 Byte (1,36 GiB)  
| | 1.461.640.213 Byte (1,36 GiB)
| align=center | 67 min 0 Sek  
| align=center | 67 min 0 Sek
| align=center | 69,3  
| align=center | 69,3


|-
|-
|}
|}


==== Programme ====
== Programme ==
Um diese Formate unter Linux packen und entpacken zu können, benötigt man für jedes Format ein eigenes Programm. Für die großen Desktop-Umgebungen GNOME und KDE gibt es Archivmanager, die über eine komfortable grafische Oberfläche verfügen, jedoch auf die Einzelprogramme zurückgreifen. Daher müssen diese auf jeden Fall installiert sein.
Um diese Formate unter Linux packen und entpacken zu können, benötigt man für jedes Format ein eigenes Programm
* Für die großen Desktop-Umgebungen GNOME und KDE gibt es Archivmanager, die über eine komfortable grafische Oberfläche verfügen, jedoch auf die Einzelprogramme zurückgreifen
* Daher müssen diese auf jeden Fall installiert sein


Um mit sämtlichen oben genannten Formaten umgehen zu können, müssen die folgenden Pakete installiert [http://wiki.ubuntuusers.de/Archivmanager?redirect=no#source-1 [1]] werden.  
Um mit sämtlichen oben genannten Formaten umgehen zu können, müssen die folgenden Pakete installiert [http://wiki.ubuntuusers.de/Archivmanager?redirect=no#source-1 [1]] werden.
* Die ersten fünf Pakete sollten bereits nach einer Standardinstallation vorhanden sein


Die ersten fünf Pakete sollten bereits nach einer Standardinstallation vorhanden sein.
{| class="wikitable options"
* [http://wiki.ubuntuusers.de/tar tar] - ein Archivierungsprogramm, das unter Linux oft mit GZip oder BZip verwendet wird
|-
* [http://wiki.ubuntuusers.de/bzip2 bzip2] - für Dateien vom Typ BZip
| [http://wiki.ubuntuusers.de/tar tar] - ein Archivierungsprogramm, das unter Linux oft mit GZip oder BZip verwendet wird
* [http://wiki.ubuntuusers.de/gzip gzip] - für Dateien vom Typ GZip
|-
* [http://wiki.ubuntuusers.de/lzop lzop] - auf Geschwindigkeit optimiertes Packprogramm
| [http://wiki.ubuntuusers.de/bzip2 bzip2] - für Dateien vom Typ BZip
* '''zip''' - zum Packen von Zip-Archiven
|-
* '''unzip''' - zum Entpacken von Zip-Archiven
| [http://wiki.ubuntuusers.de/gzip gzip] - für Dateien vom Typ GZip
* '''xz-utils''' und '''xz-lzma''' - für XZ-Dateien und den Vorgänger LZMA
|-
* [http://wiki.ubuntuusers.de/7z p7zip-full] (''universe'') - zum Packen/Entpacken mittels LZMA Algorithmus von 7-Zip-Archiven und Entpacken von AES-verschlüsselten Zip-Archiven
| [http://wiki.ubuntuusers.de/lzop lzop] - auf Geschwindigkeit optimiertes Packprogramm
* '''lha''' (''multiverse'', [http://wiki.ubuntuusers.de/Archivmanager?redirect=no#source-2 [2]]) - ein LZH-Archiver, wird von [http://wiki.ubuntuusers.de/Ark Ark] benutzt  
|-
 
| zip || Packen von Zip-Archiven
Erwähnenswert ist auch folgende Anwendung, die bereits in der Standardinstallation mit installiert wird: * [http://wiki.ubuntuusers.de/split split] - Archive in mehrere (beliebig große) Teile teilen
|-
 
| unzip || Entpacken von Zip-Archiven
Für diverse proprietäre Archivformate gibt es die Wahl zwischen einer Open Source Version und einer Version, die unter einer unfreien Lizenz steht, die dafür aber mehr Funktionalität bietet. So können beispielsweise nur die proprietären Versionen mit Passwörtern geschützte Archive extrahieren usw. Man sollte hierbei darauf achten, dass entweder die proprietäre oder die freie Version installiert ist.
|-
 
| xz-utils <br>xz-lzma || XZ-Dateien und den Vorgänger LZMA
===== Ace =====
|-
* '''unace''' (''universe'')
| [http://wiki.ubuntuusers.de/7z p7zip-full] || Packen/Entpacken mittels LZMA Algorithmus von 7-Zip-Archiven und Entpacken von AES-verschlüsselten Zip-Archiven
* '''unace-nonfree''' (''multiverse'')
|-
| lha || [http://wiki.ubuntuusers.de/Archivmanager?redirect=no#source-2 [2]] || LZH-Archiver, wird von [http://wiki.ubuntuusers.de/Ark Ark] benutzt
|}


Hinweise: unace-nonfree ist erst ab Ubuntu 7.04 Feisty Fawn verfügbar, und funktioniert nicht mit dem Archivmanager File Roller von GNOME.
Erwähnenswert ist auch folgende Anwendung, die bereits in der Standardinstallation mit installiert wird
* [http://wiki.ubuntuusers.de/split split] - Archive in mehrere (beliebig große) Teile teilen


===== Rar =====
; Proprietäre Archivformate
Für '''rar''' Dateien muss eines der folgenden Pakete installiert werden: * '''rar''' (''multiverse'' - zum Erstellen von Rar-Archiven )
Für diverse proprietäre Archivformate gibt es die Wahl zwischen einer Open Source Version und einer Version, die unter einer unfreien Lizenz steht, die dafür aber mehr Funktionalität bietet
* '''unrar''' (''multiverse'')
* So können beispielsweise nur die proprietären Versionen mit Passwörtern geschützte Archive extrahieren usw.
* '''unrar-free''' (''universe'')
* Man sollte hierbei darauf achten, dass entweder die proprietäre oder die freie Version installiert ist
* '''p7zip-rar''' (''universe'')
* '''unar''' (''universe'')


===== Hinweis =====
=== Ace ===
RAR und Ace sind [http://de.wikipedia.org/wiki/Proprietär proprietäre] Dateiformate. Das heißt, die Mechanismen zum Erstellen und Entpacken solcher Archive beruhen auf geschützten
* '''unace'''
* '''unace-nonfree'''


Closed-Source Verfahren. [https://gna.org/projects/unrar/ unrar-free] [[Image:Grafik9.png|top|alt="{en}"]]und unace sind Versuche, die wichtigsten Funktionen zum Entpacken unter einer offenen Lizenz bereit stellen zu können. [http://www.rarlab.com/ unrar] [[Image:Grafik10.png|top|alt="{en}"]]und unace-nonfree sind kommerzielle Software von den Herstellern der beiden Formate.
=== Rar ===
Für '''rar''' Dateien muss eines der folgenden Pakete installiert werden:
* '''rar''' Erstellen von Rar-Archiven
* '''unrar'''
* '''unrar-free'''
* '''p7zip-rar'''
* '''unar'''


Welches dieser Pakete man installieren soll, ist dem Benutzer selber überlassen. Möchte man ein Computersystem ohne proprietäre Software, so sollte man die freien Pakete nutzen, muss aber mit der Einschränkung leben, nicht alle Archive entpacken zu können.  
; Hinweis
: RAR und Ace sind [http://de.wikipedia.org/wiki/Proprietär proprietäre] Dateiformate
:* Das heißt, die Mechanismen zum Erstellen und Entpacken solcher Archive beruhen auf geschützten Closed-Source Verfahren
:* [https://gna.org/projects/unrar/ unrar-free] und unace sind Versuche, die wichtigsten Funktionen zum Entpacken unter einer offenen Lizenz bereit stellen zu können. [http://www.rarlab.com/ unrar] und unace-nonfree sind kommerzielle Software von den Herstellern der beiden Formate


Möchte man alle Archive inklusive beispielsweise dem RAR 3.0 Format und Passwort geschützte Archive entpacken, so muss man auf die proprietären Pakete zurückgreifen.
Welches dieser Pakete man installieren soll, ist dem Benutzer selber überlassen
* Möchte man ein Computersystem ohne proprietäre Software, so sollte man die freien Pakete nutzen, muss aber mit der Einschränkung leben, nicht alle Archive entpacken zu können
* Möchte man alle Archive inklusive beispielsweise dem RAR 3.0 Format und Passwort geschützte Archive entpacken, so muss man auf die proprietären Pakete zurückgreifen


==== Archivmanager ====
== Archivmanager ==
[[Image:Grafik11.png|right]]Die großen Desktop-Umgebungen bringen von Haus aus Archivmanager mit, die Daten (de-)komprimieren können.
Die großen Desktop-Umgebungen bringen von Haus aus Archivmanager mit, die Daten (de-)komprimieren können


Dabei sollte man im Kopf behalten, dass diese Archivmanager nur grafische Frontends für die einzelnen Packprogramme sind, die etwas weiter oben beschrieben werden.
Dabei sollte man im Kopf behalten, dass diese Archivmanager nur grafische Frontends für die einzelnen Packprogramme sind, die etwas weiter oben beschrieben werden


Ubuntu installiert aus lizenzrechtlichen Gründen standardmäßig keine Packprogramme für beliebte Archivformate wie Rar oder 7z.
Ubuntu installiert aus lizenzrechtlichen Gründen standardmäßig keine Packprogramme für beliebte Archivformate wie Rar oder 7z


Diese müssen also wie oben beschrieben installiert sein, damit die Archivmanager solche Archive verarbeiten können.
Diese müssen also wie oben beschrieben installiert sein, damit die Archivmanager solche Archive verarbeiten können


====== File Roller ======
=== File Roller ===
File Roller /http://fileroller.sourceforge.net/) ist der Archivmanager der [http://wiki.ubuntuusers.de/Unity Unity] und [http://wiki.ubuntuusers.de/GNOME GNOME] Desktop-Umgebung. Es wird direkt bei der Installation von Ubuntu mitinstalliert.
File Roller /http://fileroller.sourceforge.net/) ist der Archivmanager der [http://wiki.ubuntuusers.de/Unity Unity] und [http://wiki.ubuntuusers.de/GNOME GNOME] Desktop-Umgebung
* Es wird direkt bei der Installation von Ubuntu mitinstalliert


File Roller ist vollständig in [http://wiki.ubuntuusers.de/Nautilus Nautilus], dem Dateimanager von der GNOME Desktop-Umgebung integriert. Ein Doppelklick links auf ein Archiv öffnet dieses in File Roller. Will man ein Archiv anlegen, so markiert die zu archivierenden Dateien in Nautilus und wählt ''"Komprimieren ..."'' oder ''"Archiv anlegen"'' aus dem Kontextmenü.
File Roller ist vollständig in [http://wiki.ubuntuusers.de/Nautilus Nautilus], dem Dateimanager von der GNOME Desktop-Umgebung integriert
* Ein Doppelklick links auf ein Archiv öffnet dieses in File Roller
* Will man ein Archiv anlegen, so markiert die zu archivierenden Dateien in Nautilus und wählt ''"Komprimieren ..."'' oder ''"Archiv anlegen"'' aus dem Kontextmenü


====== ARK ======
=== ARK ===
[[Image:Grafik15.png|right]][http://wiki.ubuntuusers.de/Ark Ark] ist der Archivmanager der Desktop-Umgebung [http://wiki.ubuntuusers.de/KDE KDE]. Das Programm wird automatisch bei der Installation von [http://wiki.ubuntuusers.de/Kubuntu Kubuntu] installiert.
Ark ist der Archivmanager der Desktop-Umgebung [http://wiki.ubuntuusers.de/KDE KDE]
* Das Programm wird automatisch bei der Installation von [http://wiki.ubuntuusers.de/Kubuntu Kubuntu] installiert


Das Programm selber findet man unter* ''"K-Menü -> Dienstprogramme -> Ark (Archivprogramm)"''  
Das Programm selber findet man unter* ''"K-Menü -> Dienstprogramme -> Ark (Archivprogramm)"''


oder man startet es, indem man ein Archiv aus einem [http://wiki.ubuntuusers.de/Dateimanager Dateimanager] heraus öffnet.
oder man startet es, indem man ein Archiv aus einem [http://wiki.ubuntuusers.de/Dateimanager Dateimanager] heraus öffnet


====== Xarchiver ======
=== Xarchiver ===
[[Image:Bild1.png|right]][http://wiki.ubuntuusers.de/Xarchiver Xarchiver] ist der Archivmanager der Desktop-Umgebung [http://wiki.ubuntuusers.de/Xfce Xfce] und wird automatisch mit [http://wiki.ubuntuusers.de/Xubuntu Xubuntu] installiert.
[http://wiki.ubuntuusers.de/Xarchiver Xarchiver] ist der Archivmanager der Desktop-Umgebung [http://wiki.ubuntuusers.de/Xfce Xfce] und wird automatisch mit [http://wiki.ubuntuusers.de/Xubuntu Xubuntu] installiert


Das Programm selbst findet man im Anwendungsmenü unter ''"Zubehör -> Xarchiver"'' oder man startet es, indem man ein Archiv aus dem [http://wiki.ubuntuusers.de/Dateimanager Dateimanager] heraus öffnet.
Das Programm selbst findet man im Anwendungsmenü unter ''"Zubehör -> Xarchiver"'' oder man startet es, indem man ein Archiv aus dem [http://wiki.ubuntuusers.de/Dateimanager Dateimanager] heraus öffnet


====== Squeeze ======
=== Squeeze ===
Squeeze (http://squeeze.xfce.org/) ist ein moderner, fortgeschrittener, schneller und einfach zu bedienender Archivmanager für [http://wiki.ubuntuusers.de/Xfce Xfce]. Weitere Informationen im Artikel Squeeze (http://wiki.ubuntuusers.de/Squeeze).
Squeeze (http://squeeze.xfce.org/) ist ein moderner, fortgeschrittener, schneller und einfach zu bedienender Archivmanager für [http://wiki.ubuntuusers.de/Xfce Xfce]
* Weitere Informationen im Artikel Squeeze (http://wiki.ubuntuusers.de/Squeeze)


===== [http://wiki.ubuntuusers.de/7z?action=backlinks 7z] =====
=== [http://wiki.ubuntuusers.de/7z?action=backlinks 7z] ===
7z ist sowohl ein Dateiformat als auch ein Kommandozeilenprogramm zur Datenkompression. Es handelt sich um die Referenzimplementierung des hocheffizienten, freien LZMA-Algorithmus', der die allermeisten anderen Algorithmen in ihrer Kompressionsstärke mitunter deutlich übertrifft.
7z ist sowohl ein Dateiformat als auch ein Kommandozeilenprogramm zur Datenkompression
* Es handelt sich um die Referenzimplementierung des hocheffizienten, freien LZMA-Algorithmus', der die allermeisten anderen Algorithmen in ihrer Kompressionsstärke mitunter deutlich übertrifft


Ein Beispiel: LZMA komprimiert durchschnittlich 50% stärker als der Deflate-Algorithmus des weit verbreiteten ZIP-Formats. Auch mit proprietären, kommerziellen Formaten wie RAR kann sich 7z messen. Sensible Daten können per AES-256 verschlüsselt werden und ein Archiv kann bei Bedarf in beliebig große Teile zerlegt werden.
Ein Beispiel: LZMA komprimiert durchschnittlich 50% stärker als der Deflate-Algorithmus des weit verbreiteten ZIP-Formats
* Auch mit proprietären, kommerziellen Formaten wie RAR kann sich 7z messen
* Sensible Daten können per AES-256 verschlüsselt werden und ein Archiv kann bei Bedarf in beliebig große Teile zerlegt werden


Dank seiner Open-Source-Entwicklung hat 7z mittlerweile große Verbreitung gefunden. Die Standard-Archivmanager File-Roller (GNOME), Xarchiver (XFCE/LXDE) und Ark (KDE) kommen mit dem Format zurecht, indem sie auf das hier beschriebene 7z-Terminalprogramm zurückgreifen.
Dank seiner Open-Source-Entwicklung hat 7z mittlerweile große Verbreitung gefunden
* Die Standard-Archivmanager File-Roller (GNOME), Xarchiver (XFCE/LXDE) und Ark (KDE) kommen mit dem Format zurecht, indem sie auf das hier beschriebene 7z-Terminalprogramm zurückgreifen


Auch für Windows gibt es eine breite Palette an Programmen, die 7z von Haus aus unterstützen. Eine Auflistung findet sich auf der Homepage.
Auch für Windows gibt es eine breite Palette an Programmen, die 7z von Haus aus unterstützen
* Eine Auflistung findet sich auf der Homepage


====== Hinweis ======
'''Hinweis'''
Der LZMA-Algorithmus stellt beim Komprimieren sehr hohe Ansprüche an die Systemleistung, insbesondere an den Arbeitsspeicher. Leistungsschwache Systeme werden spätestens bei großen Datenmengen und höheren Kompressionsstufen völlig in die Knie gehen ("System Lock-up"). Um das Potential voll auszuschöpfen, sollten mindestens 2 GiB Arbeitsspeicher vorhanden sein und auch der Prozessor sollte eine Gesamtleistung von 2 GHz nicht unterschreiten.
Der LZMA-Algorithmus stellt beim Komprimieren sehr hohe Ansprüche an die Systemleistung, insbesondere an den Arbeitsspeicher
* Leistungsschwache Systeme werden spätestens bei großen Datenmengen und höheren Kompressionsstufen völlig in die Knie gehen ("System Lock-up")
* Um das Potential voll auszuschöpfen, sollten mindestens 2 GiB Arbeitsspeicher vorhanden sein und auch der Prozessor sollte eine Gesamtleistung von 2 GHz nicht unterschreiten


Nach der Installation wird '''p7zip''' mit <tt>7zr</tt> aufgerufen und '''p7zip-full''' nur mit <tt>7z</tt>. Im Verlaufe dieses Artikels wird von p7zip-full ausgegangen, der Befehl ist bei Bedarf auszutauschen.
Nach der Installation wird '''p7zip''' mit <tt>7zr</tt> aufgerufen und '''p7zip-full''' nur mit <tt>7z</tt>
* Im Verlaufe dieses Artikels wird von p7zip-full ausgegangen, der Befehl ist bei Bedarf auszutauschen


====== Benutzung ======
==== Benutzung ====
====== Achtung! ======
==== Achtung! ====
7z alleine ist für ein Backup eines kompletten Linux-/Unix-Systems nicht geeignet, da es sämtliche Zugriffsrechte ignoriert. Eine Möglichkeit, dieses Problem zu umgehen, findet sich im Abschnitt Tipps.
7z alleine ist für ein Backup eines kompletten Linux-/Unix-Systems nicht geeignet, da es sämtliche Zugriffsrechte ignoriert
* Eine Möglichkeit, dieses Problem zu umgehen, findet sich im Abschnitt Tipps


Die allgemeine Syntax von p7zip-full lautet:
Die allgemeine Syntax von p7zip-full lautet


7z OPTIONEN SWITCHES AUSGABE EINGABE  
7z OPTIONEN SWITCHES AUSGABE EINGABE


Beispiel
Beispiel


7z a -t7z -m0=LZMA -mmt=on -mx=9 -md=96m -mfb=256 /home/peter/kirschkuchenrezept.7z /home/peter/kirschkuchenrezept.doc  
7z a -t7z -m0=LZMA -mmt=on -mx=9 -md=96m -mfb=256 /home/peter/kirschkuchenrezept.7z /home/peter/kirschkuchenrezept.doc


7z erkennt Verzeichnisse (rekursives arbeiten) selbstständig, es muss kein spezieller Parameter angegeben werden. Optionen werden immer als Buchstaben am Anfang angegeben, während die darauf folgenden Switches immer ein vorstehendes <tt>-</tt> haben.
7z erkennt Verzeichnisse (rekursives arbeiten) selbstständig, es muss kein spezieller Parameter angegeben werden
* Optionen werden immer als Buchstaben am Anfang angegeben, während die darauf folgenden Switches immer ein vorstehendes <tt>-</tt> haben


====== Optionen ======
==== Optionen ====
Mit den Optionen wird zuerst grob festgelegt, was zu tun ist.
Mit den Optionen wird zuerst grob festgelegt, was zu tun ist


{| class="wikitable sortable"
{| class="wikitable sortable"
|-  
|-
| colspan="2" | '''Optionen '''
| colspan="2" | '''Optionen '''
|-
|-
| | '''Option '''
| | '''Option '''
| | '''Beschreibung '''
| | '''Beschreibung '''
|-
|-
| | <tt>a</tt>  
| | <tt>a</tt>
| | Dateien/Verzeichnisse einem Archiv hinzufügenoder eine Archivdatei erstellen  
| | Dateien/Verzeichnisse einem Archiv hinzufügenoder eine Archivdatei erstellen
|-
|-
| | <tt>d</tt>  
| | <tt>d</tt>
| | Dateien/Verzeichnisse aus einem Archiv löschen  
| | Dateien/Verzeichnisse aus einem Archiv löschen
|-
|-
| | <tt>e</tt>  
| | <tt>e</tt>
| | Einfaches Entpacken aller Dateien aus dem Archiv  
| | Einfaches Entpacken aller Dateien aus dem Archiv
|-
|-
| | <tt>l</tt>  
| | <tt>l</tt>
| | Inhalt eines Archivs auflisten  
| | Inhalt eines Archivs auflisten
|-
|-
| | <tt>t</tt>  
| | <tt>t</tt>
| | Archiv auf Beschädigungen prüfen  
| | Archiv auf Beschädigungen prüfen
|-
|-
| | <tt>u</tt>  
| | <tt>u</tt>
| | Archivinhalt aktualisieren  
| | Archivinhalt aktualisieren
|-
|-
| | <tt>x</tt>  
| | <tt>x</tt>
| | Archiv entpacken und dabei die Verzeichnisstruktur erhalten  
| | Archiv entpacken und dabei die Verzeichnisstruktur erhalten


|-
|-
|}
|}
====== Switches ======
==== Switches ====
Im folgenden nur ein Auszug der wichtigsten Switches, welche die genaue Vorgehensweise festlegen. Der Fokus liegt hier auf dem LZMA-Algorithmus. Informationen zu weiteren Switches finden sich in den [http://wiki.ubuntuusers.de/man Manpages].
Im folgenden nur ein Auszug der wichtigsten Switches, welche die genaue Vorgehensweise festlegen
* Der Fokus liegt hier auf dem LZMA-Algorithmus
* Informationen zu weiteren Switches finden sich in den [http://wiki.ubuntuusers.de/man Manpages]


{| class="wikitable sortable"
{| class="wikitable sortable"
|-  
|-
| colspan="2" | '''Switches '''
| colspan="2" | '''Switches '''
|-
|-
| | '''Switch '''
| | '''Switch '''
| | '''Beschreibung '''
| | '''Beschreibung '''
|-
|-
| | <tt>-l</tt>  
| | <tt>-l</tt>
| | keine [http://de.wikipedia.org/wiki/Symbolische_Verknüpfung Symlinks] archivieren, sondern ihr Ziel  
| | keine [http://de.wikipedia.org/wiki/Symbolische_Verknüpfung Symlinks] archivieren, sondern ihr Ziel
|-
|-
| | <tt>-m</tt>  
| | <tt>-m</tt>
| | Algorithmus für Kompression festlegen (zum Beispiel <tt>-m0=LZMA</tt>)  
| | Algorithmus für Kompression festlegen (zum Beispiel <tt>-m0=LZMA</tt>)
|-
|-
| | <tt>-mhe=on</tt>  
| | <tt>-mhe=on</tt>
| | Den [http://de.wikipedia.org/wiki/Header Header] des Archivs verschlüsseln  
| | Den [http://de.wikipedia.org/wiki/Header Header] des Archivs verschlüsseln
|-
|-
| | <tt>-oZIEL</tt>  
| | <tt>-oZIEL</tt>
| | Nicht ins gleiche Verzeichnis entpacken (Standard), sondern nach "ZIEL"  
| | Nicht ins gleiche Verzeichnis entpacken (Standard), sondern nach "ZIEL"
|-
|-
| | <tt>-pPASSWORT</tt>  
| | <tt>-pPASSWORT</tt>
| | Archiv mit Passwort schützen  
| | Archiv mit Passwort schützen
|-
|-
| | <tt>-tDATEIFORMAT</tt>  
| | <tt>-tDATEIFORMAT</tt>
| | Dateiformat festlegen (zum Beispiel <tt>-t7z</tt>)  
| | Dateiformat festlegen (zum Beispiel <tt>-t7z</tt>)
|-
|-
| | <tt>-mmt=on</tt>  
| | <tt>-mmt=on</tt>
| | [http://de.wikipedia.org/wiki/Multithreading Multithreading] für Mehrkernprozessoren oder Multiprozessorsysteme aktivieren  
| | [http://de.wikipedia.org/wiki/Multithreading Multithreading] für Mehrkernprozessoren oder Multiprozessorsysteme aktivieren
|-
|-
| | <tt>-mx=STUFE</tt>  
| | <tt>-mx=STUFE</tt>
| | Stufe der Kompressionsstärke (1=schnell und schlecht, 9=langsam und gut)  
| | Stufe der Kompressionsstärke (1=schnell und schlecht, 9=langsam und gut)
|-
|-
| | <tt>-mfb=NUMMER</tt>  
| | <tt>-mfb=NUMMER</tt>
| | Anzahl der [http://de.wikipedia.org/wiki/Wörterbuchkompression Wörterbücher] (8, 12, 16, 24, 32, 48, 64, 96, 128, 192, 256, 273)  
| | Anzahl der [http://de.wikipedia.org/wiki/Wörterbuchkompression Wörterbücher] (8, 12, 16, 24, 32, 48, 64, 96, 128, 192, 256, 273)
|-
|-
| | <tt>-md=NUMMER</tt>  
| | <tt>-md=NUMMER</tt>
| | Größe der Wörterbücher (64k, 1m, 2m, 4m, 6m, 8m, 12m, 16m, 24m, 32m, 48m, 64m, 96m, 128m)  
| | Größe der Wörterbücher (64k, 1m, 2m, 4m, 6m, 8m, 12m, 16m, 24m, 32m, 48m, 64m, 96m, 128m)
|-
|-
| | <tt>-ms=on</tt>  
| | <tt>-ms=on</tt>
| | [http://de.wikipedia.org/wiki/Progressive_Kompression Progressive ("solid") Kompression]  
| | [http://de.wikipedia.org/wiki/Progressive_Kompression Progressive ("solid") Kompression]


|-
|-
|}
|}
====== Tipps ======
==== Tipps ====
* Je höher die anstehenden Nummern bei den Switches <tt>-mfb</tt> und <tt>-md</tt> sind, desto stärker ist die Kompression. Dies wirkt sich allerdings nicht nur auf die benötigte Zeit des Vorgangs aus, sondern auch auf die Systemauslastung, insbesondere die des Arbeitsspeichers. Es sei nochmals darauf hingewiesen, dass der Switch <tt>-md</tt> nicht die maximale Beanspruchung des Arbeitsspeichers definiert.
* Je höher die anstehenden Nummern bei den Switches <tt>-mfb</tt> und <tt>-md</tt> sind, desto stärker ist die Kompression
* Die progressive Komprimierung wird die Effizienz immer dann erhöhen, wenn mehrere Dateien gepackt werden sollen – insbesondere, wenn diese sich ähneln. Der nötige Aufwand kann durch die Methode jedoch stark in die Höhe schießen, sie sollte mit Bedacht eingesetzt werden. Ist ein Archiv progressiv komprimiert worden, können einzelne Dateienoder Verzeichnisse nur entpackt werden, indem alles, was sich im Archiv davor befindet, abgearbeitet wird. In einem solchem Szenario dauert das Entpacken länger. Beim Entpacken des gesamten Archivs gibt es hingegen keinen sonderlichen Zeitunterschied.
* Dies wirkt sich allerdings nicht nur auf die benötigte Zeit des Vorgangs aus, sondern auch auf die Systemauslastung, insbesondere die des Arbeitsspeichers
* Um doch ein Backup eines Linux-/Unix-Systems mit 7z zu komprimieren, empfiehlt es sich, dieses vorher mit [http://wiki.ubuntuusers.de/tar tar] zu einem einzelnen Datenstrom zusammenzufügen. Beispiel:
* Es sei nochmals darauf hingewiesen, dass der Switch <tt>-md</tt> nicht die maximale Beanspruchung des Arbeitsspeichers definiert
* Die progressive Komprimierung wird die Effizienz immer dann erhöhen, wenn mehrere Dateien gepackt werden sollen – insbesondere, wenn diese sich ähneln
* Der nötige Aufwand kann durch die Methode jedoch stark in die Höhe schießen, sie sollte mit Bedacht eingesetzt werden
* Ist ein Archiv progressiv komprimiert worden, können einzelne Dateienoder Verzeichnisse nur entpackt werden, indem alles, was sich im Archiv davor befindet, abgearbeitet wird
* In einem solchem Szenario dauert das Entpacken länger
* Beim Entpacken des gesamten Archivs gibt es hingegen keinen sonderlichen Zeitunterschied
* Um doch ein Backup eines Linux-/Unix-Systems mit 7z zu komprimieren, empfiehlt es sich, dieses vorher mit [http://wiki.ubuntuusers.de/tar tar] zu einem einzelnen Datenstrom zusammenzufügen
* Beispiel


tar cf - PFAD | 7za a -si ERGEBNIS.tar.7z  
tar cf - PFAD | 7za a -si ERGEBNIS.tar.7z


Das Entpacken eines solchen Archives läuft dann wieder in umgekehrter Reihenfolge ab (Achtung! Das Zielverzeichnis '''ZIELPFAD''' muss vorhanden sein!):
Das Entpacken eines solchen Archives läuft dann wieder in umgekehrter Reihenfolge ab (Achtung! Das Zielverzeichnis '''ZIELPFAD''' muss vorhanden sein!)


7za x -so ERGEBNIS.tar.7z | tar xf - -C ZIELPFAD  
7za x -so ERGEBNIS.tar.7z | tar xf - -C ZIELPFAD


==== Terminal ====
== Terminal ==
Man muss nicht zwangsläufig auf die graphischen Archivmanager zurückgreifen. Alle Packprogramme kann man auch von einem Terminal heraus bedienen. Wichtig dabei ist natürlich, dass die oben genannten Packprogramme installiert sind.
Man muss nicht zwangsläufig auf die graphischen Archivmanager zurückgreifen
* Alle Packprogramme kann man auch von einem Terminal heraus bedienen
* Wichtig dabei ist natürlich, dass die oben genannten Packprogramme installiert sind


===== Ace =====
=== Ace ===
<nowiki># Falls unance-nonfree installiert ist</nowiki>
Falls unance-nonfree installiert ist
unace (OPTIONEN) ARCHIVNAME.ace
unace (OPTIONEN) ARCHIVNAME.ace
<nowiki># Falls unace installiert ist</nowiki>
unace e ARCHIVNAME.ace  


===== Rar =====
Falls unace installiert ist
====== Archive erstellen ======
unace e ARCHIVNAME.ace
 
=== Rar ===
==== Archive erstellen ====
<nowiki># Allgemein</nowiki>
<nowiki># Allgemein</nowiki>
rar a ARCHIVNAME DATEI1 (DATEI2) ...
rar a ARCHIVNAME DATEI1 (DATEI2)
<nowiki># Beispiel</nowiki>
<nowiki># Beispiel</nowiki>
rar a -v2048 test.rar -p datei1 datei2 datei3  
rar a -v2048 test.rar -p datei1 datei2 datei3


====== Archive entpacken ======
==== Archive entpacken ====
Manche unter Windows erstellte Rar-Archive lassen sich aus unbekannten Gründen nicht mit Ark unter KDE öffnen. Hier ist man gezwungen, auf das Entpacken im Terminal zurückzugreifen, was in der Regel einwandfrei funktioniert. Dazu geht man wie folgt vor:
Manche unter Windows erstellte Rar-Archive lassen sich aus unbekannten Gründen nicht mit Ark unter KDE öffnen
* Hier ist man gezwungen, auf das Entpacken im Terminal zurückzugreifen, was in der Regel einwandfrei funktioniert
* Dazu geht man wie folgt vor


<nowiki># Allgemein</nowiki>
<nowiki># Allgemein</nowiki>
unrar x ARCHIVNAME.rar
unrar x ARCHIVNAME.rar
<nowiki># Beispiel</nowiki>
<nowiki># Beispiel</nowiki>
unrar x -pPasswort ~/Desktop/beispiel.rar  
unrar x -pPasswort ~/Desktop/beispiel.rar


Ein Sonderfall ergibt sich, wenn bei einer passwortgeschützten Datei das Passwort mit Sonderzeichen, wie etwa ~ endet. In diesem Fall führt der o. g. Befehl zu der Fehlermeldung
Ein Sonderfall ergibt sich, wenn bei einer passwortgeschützten Datei das Passwort mit Sonderzeichen, wie etwa ~ endet
* In diesem Fall führt der o
* g
* Befehl zu der Fehlermeldung


bash: !~: event not found
bash: !~: event not found


Das Problem kann man umgehen, indem man zunächst das Entpacken ohne Passworteingabe einleitet (siehe Befehl oben). Dann wird man automatisch nach dem Passwort gefragt, welches man nun eingeben kann. Achtung: Das Passwort wird bei der Eingabe nicht angezeigt.
Das Problem kann man umgehen, indem man zunächst das Entpacken ohne Passworteingabe einleitet (siehe Befehl oben)
* Dann wird man automatisch nach dem Passwort gefragt, welches man nun eingeben kann
* Achtung: Das Passwort wird bei der Eingabe nicht angezeigt


Enter password (will not be echoed) for Dateiname.rar:
Enter password (will not be echoed) for Dateiname.rar


{| class="wikitable sortable"
{| class="wikitable sortable"
|-
|-
| | '''Kommandos / Optionen '''
| | '''Kommandos / Optionen '''
| | '''Bemerkung '''
| | '''Bemerkung '''
|-
|-
| | <tt>a</tt>  
| | <tt>a</tt>
| | Dateien sollen hinzugefügt werden.
| | Dateien sollen hinzugefügt werden
|-
|-
| | <tt>e</tt>  
| | <tt>e</tt>
| | Dateien sollen entpackt werden.
| | Dateien sollen entpackt werden
|-
|-
| | <tt>x</tt>  
| | <tt>x</tt>
| | Dateien sollen in die in der Datei enthaltene Verzeichnisstruktur entpackt werden.
| | Dateien sollen in die in der Datei enthaltene Verzeichnisstruktur entpackt werden
|-
|-
| | <tt>-m[KOMPRESSIONSLEVEL]</tt>  
| | <tt>-m[KOMPRESSIONSLEVEL]</tt>
| | Setzt den Kompressionslevel ( <tt>-m0</tt> = ohne; <tt>-m3</tt> = standard; <tt>-m5</tt> = maximal) (optional).
| | Setzt den Kompressionslevel ( <tt>-m0</tt> = ohne; <tt>-m3</tt> = standard; <tt>-m5</tt> = maximal) (optional)
|-
|-
| | <tt>-v[GROESSE][EINHEIT]</tt>  
| | <tt>-v[GROESSE][EINHEIT]</tt>
| | Legt die Dateigröße fest, als Einheit kann man u.a. Byte (<tt>b</tt>), Kilobyte (<tt>k</tt>), und Megabyte (<tt>m</tt>) wählen. Wenn man nun Teilarchive haben will, die zum Beispiel 100 Megabyte groß sind, wählt man folgende Option <tt>-v100m</tt>. Die Größe der Teilarchive geht bei 1000 Bytes los, kleinere Teilarchive kann man nicht erstellen (optional).
| | Legt die Dateigröße fest, als Einheit kann man u.a
* Byte (<tt>b</tt>), Kilobyte (<tt>k</tt>), und Megabyte (<tt>m</tt>) wählen
* Wenn man nun Teilarchive haben will, die zum Beispiel 100 Megabyte groß sind, wählt man folgende Option <tt>-v100m</tt>
* Die Größe der Teilarchive geht bei 1000 Bytes los, kleinere Teilarchive kann man nicht erstellen (optional)
|-
|-
| | <tt>-rr[GROESSE][EINHEIT]</tt>  
| | <tt>-rr[GROESSE][EINHEIT]</tt>
| | Fügt Wiederherstellungsinformationen hinzu. Diese können bspw. in Prozent angegeben werden, für fünf Prozent gibt man also <tt>-rr5%</tt> an. Wird keine Einheit angegeben, gibt die Größenangabe die Anzahl der Sektoren an, die zur Wiederherstellung verwendet werden können (optional).
| | Fügt Wiederherstellungsinformationen hinzu
* Diese können bspw
* in Prozent angegeben werden, für fünf Prozent gibt man also <tt>-rr5%</tt> an
* Wird keine Einheit angegeben, gibt die Größenangabe die Anzahl der Sektoren an, die zur Wiederherstellung verwendet werden können (optional)
|-
|-
| | <tt>-p</tt>  
| | <tt>-p</tt>
| | Setzt ein Passwort, das man nach der Eingabe festlegt (optional).
| | Setzt ein Passwort, das man nach der Eingabe festlegt (optional)
|-
|-
| | <tt>-hp</tt>  
| | <tt>-hp</tt>
| | Setzt auch ein Passwort, Unterschied zu <tt>-p</tt> ist, dass das Archiv nun komplett verschlüsselt wird, das heißt die Dateinamen im Archiv werden auch verschlüsselt (optional).
| | Setzt auch ein Passwort, Unterschied zu <tt>-p</tt> ist, dass das Archiv nun komplett verschlüsselt wird, das heißt die Dateinamen im Archiv werden auch verschlüsselt (optional)


|-
|-
|}
|}
===== tar.gz/tar.bz2 =====
=== tar.gz/tar.bz2 ===
====== tar.gz ======
==== tar.gz ====
====== Archive erstellen ======
==== Archive erstellen ====
<nowiki># Allgemein</nowiki>
<nowiki># Allgemein</nowiki>
tar -czf ARCHIVNAME.tar.gz DATEI1/VERZEICHNIS1 (DATEI2/VERZEICHNIS2) ...
tar -czf ARCHIVNAME.tar.gz DATEI1/VERZEICHNIS1 (DATEI2/VERZEICHNIS2)
<nowiki># Beispiel</nowiki>
<nowiki># Beispiel</nowiki>
tar -czf beispiel.tar.gz test example
tar -czf beispiel.tar.gz test example
<nowiki># oder</nowiki>
<nowiki># oder</nowiki>
tar -czf beispiel.tar.gz test/  
tar -czf beispiel.tar.gz test/


Dabei wird im ersten Beispiel ein Archiv '''beispiel.tar.gz''' aus den Dateien '''test''' und '''example''' erstellt. Im zweiten Beispiel wird aus dem Verzeichnis '''test/''' ein Archiv erstellt.
Dabei wird im ersten Beispiel ein Archiv '''beispiel.tar.gz''' aus den Dateien '''test''' und '''example''' erstellt
* Im zweiten Beispiel wird aus dem Verzeichnis '''test/''' ein Archiv erstellt


====== Archive entpacken ======
==== Archive entpacken ====
<nowiki># Allgemein</nowiki>
<nowiki># Allgemein</nowiki>
tar -xzf ARCHIVNAME.tar.gz
tar -xzf ARCHIVNAME.tar.gz
<nowiki># Beispiel</nowiki>
<nowiki># Beispiel</nowiki>
tar -xzf beispiel.tar.gz  
tar -xzf beispiel.tar.gz


====== tar.bz2 ======
=== tar.bz2 ===
====== Archive erstellen ======
==== Archive erstellen ====
<nowiki># Allgemein</nowiki>
<nowiki># Allgemein</nowiki>
tar -cjf ARCHIVNAME.tar.bz2 DATEI1/VERZEICHNIS1 (DATEI2/VERZEICHNIS2) ...
tar -cjf ARCHIVNAME.tar.bz2 DATEI1/VERZEICHNIS1 (DATEI2/VERZEICHNIS2)
<nowiki># Beispiel</nowiki>
<nowiki># Beispiel</nowiki>
tar -cjf beispiel.tar.bz2 test example
tar -cjf beispiel.tar.bz2 test example
<nowiki># oder</nowiki>
<nowiki># oder</nowiki>
tar -cjf beispiel.tar.bz2 test/  
tar -cjf beispiel.tar.bz2 test/


Dabei wird im ersten Beispiel ein Archiv '''beispiel.tar.bz2''' aus den Dateien '''test''' und '''example''' erstellt. Im zweiten Beispiel wird aus dem Verzeichnis '''test/''' ein Archiv erstellt.
Dabei wird im ersten Beispiel ein Archiv '''beispiel.tar.bz2''' aus den Dateien '''test''' und '''example''' erstellt
* Im zweiten Beispiel wird aus dem Verzeichnis '''test/''' ein Archiv erstellt


====== Archive entpacken ======
==== Archive entpacken ====
<nowiki># Allgemein</nowiki>
<nowiki># Allgemein</nowiki>
tar -xjf ARCHIVNAME.tar.bz2
tar -xjf ARCHIVNAME.tar.bz2
<nowiki># Beispiel</nowiki>
<nowiki># Beispiel</nowiki>
tar -xjf beispiel.tar.bz2  
tar -xjf beispiel.tar.bz2


Dabei entsteht in der Regel ein neues Verzeichnis, in welches man dann wechseln kann. Manchmal möchte man den Inhalt des Archivs auch direkt an einen Ort entpacken (für '''.tar.bz2''' bitte die Befehle entsprechend ändern):
Dabei entsteht in der Regel ein neues Verzeichnis, in welches man dann wechseln kann
* Manchmal möchte man den Inhalt des Archivs auch direkt an einen Ort entpacken (für '''.tar.bz2''' bitte die Befehle entsprechend ändern)


<nowiki># Allgemein</nowiki>
<nowiki># Allgemein</nowiki>
tar -xjf ARCHIVNAME.tar.bz2 -C ZIELORDNER
tar -xjf ARCHIVNAME.tar.bz2 -C ZIELORDNER
<nowiki># Beispiel</nowiki>
<nowiki># Beispiel</nowiki>
tar -xjf php-5.1.0.tar.bz2 -C /opt/php5  
tar -xjf php-5.1.0.tar.bz2 -C /opt/php5


===== UnZip =====
=== UnZip ===
<nowiki># Datei entpacken</nowiki>
<nowiki># Datei entpacken</nowiki>
unzip ARCHIVNAME.zip
unzip ARCHIVNAME.zip
<nowiki># in Ordner entpacken</nowiki>
<nowiki># in Ordner entpacken</nowiki>
unzip ARCHIVNAME.zip -d ZIELORDNER  
unzip ARCHIVNAME.zip -d ZIELORDNER


===== atool, Unpack und dtrx =====
=== atool, Unpack und dtrx ===
Um sich nicht die unterschiedlichen Befehle und Parameter der verschiedenen Archivformattools zu merken, gibt es [http://www.nongnu.org/atool/ atool] [[Image:Bild3.png|top|alt="{en}"]], [http://Unpack.sourceforge.net/ Unpack] [[Image:Grafik21.png|top|alt="{en}"]]oder [http://brettcsmith.org/2007/dtrx/ dtrx] [[Image:Grafik22.png|top|alt="{en}"]]. Die Programme kennen die Syntax um Archive zu entpacken und ersparen dem Benutzer die Eingabe des kompletten Befehls. So kann man dann mit einem einzigen Befehl wie  
Um sich nicht die unterschiedlichen Befehle und Parameter der verschiedenen Archivformattools zu merken, gibt es [http://www.nongnu.org/atool/ atool], [http://Unpack.sourceforge.net/ Unpack]oder [http://brettcsmith.org/2007/dtrx/ dtrx]
* Die Programme kennen die Syntax um Archive zu entpacken und ersparen dem Benutzer die Eingabe des kompletten Befehls
* So kann man dann mit einem einzigen Befehl wie


aunpack ARCHIV  
aunpack ARCHIV


oder  
oder


unp ARCHIV  
unp ARCHIV


oder  
oder


dtrx ARCHIV  
dtrx ARCHIV


bequem im Terminal [http://wiki.ubuntuusers.de/Archivmanager?redirect=no#source-4 [4]] entpacken. Weitere Informationen zu Unpack findet man im Wiki unter [http://wiki.ubuntuusers.de/unp unp].
bequem im Terminal [http://wiki.ubuntuusers.de/Archivmanager?redirect=no#source-4 [4]] entpacken
* Weitere Informationen zu Unpack findet man im Wiki unter [http://wiki.ubuntuusers.de/unp unp]


Die Funktionalität von atool geht sogar noch weiter, so können u.a. mit <tt>apack</tt> Archive erstellt werden oder mit <tt>als</tt> Archivinhalte aufgelistet werden. '''atool''' kann aus den ''universe''-Quellen installiert werden:* '''atool''' (''universe'')  
Die Funktionalität von atool geht sogar noch weiter, so können u.a
* mit <tt>apack</tt> Archive erstellt werden oder mit <tt>als</tt> Archivinhalte aufgelistet werden. '''atool''' kann aus den ''universe''-Quellen installiert werden:* '''atool''' (''universe'')


Analog '''dtrx''': * '''dtrx''' (''universe'')  
Analog '''dtrx''': * '''dtrx''' (''universe'')


===== zless und bzless =====
=== zless und bzless ===
[http://wiki.ubuntuusers.de/less#zless-und-bzless zless und bzless] sind zwei kleine Programme, mit denen sich gepackte Textdateien ('''.gz''' und '''.bz2''') betrachten lassen, ohne sie vorher manuell entpacken zu müssen.
[http://wiki.ubuntuusers.de/less#zless-und-bzless zless und bzless] sind zwei kleine Programme, mit denen sich gepackte Textdateien ('''.gz''' und '''.bz2''') betrachten lassen, ohne sie vorher manuell entpacken zu müssen


==== Weitere Packprogramme ====
=== Weitere Packprogramme ===
===== cabextract =====
==== cabextract ====
[http://wiki.ubuntuusers.de/Cabinet-Dateien#cabextract cabextract] ist zum Entpacken von [http://wiki.ubuntuusers.de/Cabinet-Dateien Cabinet-Dateien], welche im Format '''.cab''' vorliegen, gedacht.
[http://wiki.ubuntuusers.de/Cabinet-Dateien#cabextract cabextract] ist zum Entpacken von [http://wiki.ubuntuusers.de/Cabinet-Dateien Cabinet-Dateien], welche im Format '''.cab''' vorliegen, gedacht


===== innoextract =====
==== innoextract ====
[http://wiki.ubuntuusers.de/innoextract innoextract] extrahiert Installationsdateien, welche mit [http://de.wikipedia.org/wiki/Inno_Setup Inno Setup] erstellt wurden.
[http://wiki.ubuntuusers.de/innoextract innoextract] extrahiert Installationsdateien, welche mit [http://de.wikipedia.org/wiki/Inno_Setup Inno Setup] erstellt wurden


===== unshield =====
==== unshield ====
[http://wiki.ubuntuusers.de/Cabinet-Dateien#unshield unshield] ist wie cabextract zum Entpacken von [http://wiki.ubuntuusers.de/Cabinet-Dateien Cabinet-Dateien] gedacht, jedoch für Anwendungen, die [http://de.wikipedia.org/wiki/InstallShield InstallShield] verwenden.
[http://wiki.ubuntuusers.de/Cabinet-Dateien#unshield unshield] ist wie cabextract zum Entpacken von [http://wiki.ubuntuusers.de/Cabinet-Dateien Cabinet-Dateien] gedacht, jedoch für Anwendungen, die [http://de.wikipedia.org/wiki/InstallShield InstallShield] verwenden


===== PeaZip =====
==== PeaZip ====
[[Image:Bild4.png|right]][http://wiki.ubuntuusers.de/PeaZip PeaZip] ist ein relativ junges plattformübergreifendes Projekt (2005) und stellt eine gute und funktionserweiterte Alternative zu den obigen Archivmanagern dar.
[http://wiki.ubuntuusers.de/PeaZip PeaZip] ist ein relativ junges plattformübergreifendes Projekt (2005) und stellt eine gute und funktionserweiterte Alternative zu den obigen Archivmanagern dar


Es unterstützt praktisch alle im Rahmen der lizenzrechtlichen Bestimmungen verfügbaren Formate und bietet eine kaum mehr überschaubare  
Es unterstützt praktisch alle im Rahmen der lizenzrechtlichen Bestimmungen verfügbaren Formate und bietet eine kaum mehr überschaubare


Vielfalt an Funktionen, Optionen und Filtern. Besondere Beachtung verdienen die umfangreichen Möglichkeiten zur Datensicherheit (verschiedene Verschlüsselungen, Löschen durch mehrfaches Überschreiben usw.).
Vielfalt an Funktionen, Optionen und Filtern
* Besondere Beachtung verdienen die umfangreichen Möglichkeiten zur Datensicherheit (verschiedene Kryptografieen, Löschen durch mehrfaches Überschreiben usw.)
 
Im Gegensatz zu den oben beschriebenen [http://wiki.ubuntuusers.de/Archivmanager?redirect=no#Archivmanager Archivmanagern] ist PeaZip kein grafisches Frontend für die einzelnen oben beschriebenen [http://wiki.ubuntuusers.de/Archivmanager?redirect=no#Programme Packprogramme], sondern ein eigenständiges Pack- und Archivierungsprogramm
 
Es ist also nicht auf die separate Installation von Packprogrammen angewiesen
 
<noinclude>
 
== Anhang ==
=== Siehe auch ===
{{Special:PrefixIndex/{{BASEPAGENAME}}}}
==== Dokumentation ====
===== RFC =====
{| class="wikitable sortable options"
|-
! RFC !! Titel
|-
| [https://www.rfc-editor.org/rfc/0000 0000] ||
|}


Im Gegensatz zu den oben beschriebenen [http://wiki.ubuntuusers.de/Archivmanager?redirect=no#Archivmanager Archivmanagern] ist PeaZip kein grafisches Frontend für die einzelnen oben beschriebenen [http://wiki.ubuntuusers.de/Archivmanager?redirect=no#Programme Packprogramme], sondern ein eigenständiges Pack- und Archivierungsprogramm.
===== Man-Page =====
===== Info-Pages =====
==== Links ====
===== Projekt =====
===== Weblinks =====
</noinclude>


Es ist also nicht auf die separate Installation von Packprogrammen angewiesen.
[[Kategorie:Linux/Backup]]
[[Kategorie:Linux/Datei/Archiv]]

Aktuelle Version vom 6. November 2024, 12:24 Uhr

Datei archivieren und komprimieren - Dateien zu Archiven zusammenfassen und Dateigröße verringern

Beschreibung

Dateien in Archive zu verpacken und ihre Größe durch Kompressionsalgorithmen zu verkleinern ist ein häufiger Vorgang in der Datenverarbeitung

Archiven und komprimierte Dateien
  • Ein Archiv ist ein unkomprimierter Behälter für Dateien
  • Dieses Archiv kann durch Kompressionsverfahren komprimiert werden
  • Es gibt allerdings ein paar Formate, die gleich auch eine Komprimierung beinhalten

Archivformate

Es gibt sehr viele verschiedene Formate zum Komprimieren von Daten

  • Soweit bekannt, lassen sich sämtliche Formate unter Linux benutzen, zumindest jedoch kann man die Dateien öffnen (entpacken)

Bekannte Formate unter Linux/Unix sind folgende

  • gzip - Kurze Laufzeit, Endung .gz
  • bzip2 - Hohe Kompressionsrate, Endung .bz2
  • xz - Neueres, 7z ähnliches Format, Endung .xz

Hierbei ist zu beachten, dass unter Linux erst die oft genutzte Kombination aus dem Archivprogramm tar und einer Kompression mittels gzip oder bzip2 ein komprimiertes Archiv ergibt. .tar.gzoder .tar.bz2-Dateien sind also .tar Archive, die mit dem entsprechenden Kompressionsverfahren komprimiert wurden

MS-Windows

Unter Windows sind vorwiegend die folgenden Formate gebräuchlich, die sich aber auch unter Linux benutzen lassen

  • ZIP - Das wohl bekannteste Packformat, gleichzeitig auch die Dateiendung .zip
  • RAR - Bekanntes Dateiformat, gleichzeitig auch die Dateiendung .rar
  • ACE - ACE Packformat, sehr leistungsfähig, gleichzeitig auch die Dateiendung .ace
  • 7z - Freies Packformat, sehr leistungsfähig und quelloffen
  • Dateiendung .7z

Welches Format man wählt hängt vom Verwendungszweck ab

  • Möchte man Mails auf einem Server im laufenden Betrieb komprimieren dann sollte der Prozess den Server nicht zu stark beanspruchen damit der Mailverkehr nicht beeinträchtigt wird

Hat man jedoch nur sehr wenig Platz so kann man eine stärkere Komprimierung wählen, dies benötigt jedoch auch mehr Leistung und dauert länger

  • Der folgende Test samt Auflistung stammt aus dem Artikel qt4-fsarchiver und soll ein Gefühl für Komprimierung und Geschwindigkeit vermitteln

Für den gesamtem Test lagen folgende Bedingungen zu Grunde

  • Quellmedium: ganze Partition
  • Partitionstyp: Kubuntu Lucid root-Partition (breit gestreute Datenformate); ohne das /home Verzeichnis (liegt in separater Partition)
  • Partitionsgröße: 15 GiB; tatsächlicher Dateninhalt 4,43 GiB; 189807 Dateien und Verzeichnisse
Kompressionsübersicht
Modus/Stufe Komprimierte Größe (~ GiB) Zeitaufwand Ersparnis in ~ %
lzo (keine Unterstufen) 2.141.695.938 Byte (1.99 GiB) 11 min 12 Sek 55,1
gzip fast 1.822.273.889 Byte (1.7 GiB) 12min 11 Sek 61,6
gzip standard 1.695.248.687 Byte (1.58 GiB) 12 min 49 Sek 64,3
gzip best 1.688.266.397 Byte (1,57 GiB) 23 min 52 Sek 64,6
bzip2 fast 1.660.019.964 Byte (1,55 GiB) 26 min 11 Sek 65
bzip2 good 1.637.605.954 Byte (1,53 GiB) 28 min 23 Sek 65,5
lzma fast 1.597.604.088 Byte (1,49 GiB) 19 min 19 Sek 66,4
lzma medium 1.480.208.664 Byte (1,38 GiB) 59 min 4 Sek 68,8
lzma best 1.461.640.213 Byte (1,36 GiB) 67 min 0 Sek 69,3

Programme

Um diese Formate unter Linux packen und entpacken zu können, benötigt man für jedes Format ein eigenes Programm

  • Für die großen Desktop-Umgebungen GNOME und KDE gibt es Archivmanager, die über eine komfortable grafische Oberfläche verfügen, jedoch auf die Einzelprogramme zurückgreifen
  • Daher müssen diese auf jeden Fall installiert sein

Um mit sämtlichen oben genannten Formaten umgehen zu können, müssen die folgenden Pakete installiert [1] werden.

  • Die ersten fünf Pakete sollten bereits nach einer Standardinstallation vorhanden sein
tar - ein Archivierungsprogramm, das unter Linux oft mit GZip oder BZip verwendet wird
bzip2 - für Dateien vom Typ BZip
gzip - für Dateien vom Typ GZip
lzop - auf Geschwindigkeit optimiertes Packprogramm
zip Packen von Zip-Archiven
unzip Entpacken von Zip-Archiven
xz-utils
xz-lzma
XZ-Dateien und den Vorgänger LZMA
p7zip-full Packen/Entpacken mittels LZMA Algorithmus von 7-Zip-Archiven und Entpacken von AES-verschlüsselten Zip-Archiven
lha [2] LZH-Archiver, wird von Ark benutzt

Erwähnenswert ist auch folgende Anwendung, die bereits in der Standardinstallation mit installiert wird

  • split - Archive in mehrere (beliebig große) Teile teilen
Proprietäre Archivformate

Für diverse proprietäre Archivformate gibt es die Wahl zwischen einer Open Source Version und einer Version, die unter einer unfreien Lizenz steht, die dafür aber mehr Funktionalität bietet

  • So können beispielsweise nur die proprietären Versionen mit Passwörtern geschützte Archive extrahieren usw.
  • Man sollte hierbei darauf achten, dass entweder die proprietäre oder die freie Version installiert ist

Ace

  • unace
  • unace-nonfree

Rar

Für rar Dateien muss eines der folgenden Pakete installiert werden:

  • rar Erstellen von Rar-Archiven
  • unrar
  • unrar-free
  • p7zip-rar
  • unar
Hinweis
RAR und Ace sind proprietäre Dateiformate
  • Das heißt, die Mechanismen zum Erstellen und Entpacken solcher Archive beruhen auf geschützten Closed-Source Verfahren
  • unrar-free und unace sind Versuche, die wichtigsten Funktionen zum Entpacken unter einer offenen Lizenz bereit stellen zu können. unrar und unace-nonfree sind kommerzielle Software von den Herstellern der beiden Formate

Welches dieser Pakete man installieren soll, ist dem Benutzer selber überlassen

  • Möchte man ein Computersystem ohne proprietäre Software, so sollte man die freien Pakete nutzen, muss aber mit der Einschränkung leben, nicht alle Archive entpacken zu können
  • Möchte man alle Archive inklusive beispielsweise dem RAR 3.0 Format und Passwort geschützte Archive entpacken, so muss man auf die proprietären Pakete zurückgreifen

Archivmanager

Die großen Desktop-Umgebungen bringen von Haus aus Archivmanager mit, die Daten (de-)komprimieren können

Dabei sollte man im Kopf behalten, dass diese Archivmanager nur grafische Frontends für die einzelnen Packprogramme sind, die etwas weiter oben beschrieben werden

Ubuntu installiert aus lizenzrechtlichen Gründen standardmäßig keine Packprogramme für beliebte Archivformate wie Rar oder 7z

Diese müssen also wie oben beschrieben installiert sein, damit die Archivmanager solche Archive verarbeiten können

File Roller

File Roller /http://fileroller.sourceforge.net/) ist der Archivmanager der Unity und GNOME Desktop-Umgebung

  • Es wird direkt bei der Installation von Ubuntu mitinstalliert

File Roller ist vollständig in Nautilus, dem Dateimanager von der GNOME Desktop-Umgebung integriert

  • Ein Doppelklick links auf ein Archiv öffnet dieses in File Roller
  • Will man ein Archiv anlegen, so markiert die zu archivierenden Dateien in Nautilus und wählt "Komprimieren ..." oder "Archiv anlegen" aus dem Kontextmenü

ARK

Ark ist der Archivmanager der Desktop-Umgebung KDE

  • Das Programm wird automatisch bei der Installation von Kubuntu installiert

Das Programm selber findet man unter* "K-Menü -> Dienstprogramme -> Ark (Archivprogramm)"

oder man startet es, indem man ein Archiv aus einem Dateimanager heraus öffnet

Xarchiver

Xarchiver ist der Archivmanager der Desktop-Umgebung Xfce und wird automatisch mit Xubuntu installiert

Das Programm selbst findet man im Anwendungsmenü unter "Zubehör -> Xarchiver" oder man startet es, indem man ein Archiv aus dem Dateimanager heraus öffnet

Squeeze

Squeeze (http://squeeze.xfce.org/) ist ein moderner, fortgeschrittener, schneller und einfach zu bedienender Archivmanager für Xfce

7z

7z ist sowohl ein Dateiformat als auch ein Kommandozeilenprogramm zur Datenkompression

  • Es handelt sich um die Referenzimplementierung des hocheffizienten, freien LZMA-Algorithmus', der die allermeisten anderen Algorithmen in ihrer Kompressionsstärke mitunter deutlich übertrifft

Ein Beispiel: LZMA komprimiert durchschnittlich 50% stärker als der Deflate-Algorithmus des weit verbreiteten ZIP-Formats

  • Auch mit proprietären, kommerziellen Formaten wie RAR kann sich 7z messen
  • Sensible Daten können per AES-256 verschlüsselt werden und ein Archiv kann bei Bedarf in beliebig große Teile zerlegt werden

Dank seiner Open-Source-Entwicklung hat 7z mittlerweile große Verbreitung gefunden

  • Die Standard-Archivmanager File-Roller (GNOME), Xarchiver (XFCE/LXDE) und Ark (KDE) kommen mit dem Format zurecht, indem sie auf das hier beschriebene 7z-Terminalprogramm zurückgreifen

Auch für Windows gibt es eine breite Palette an Programmen, die 7z von Haus aus unterstützen

  • Eine Auflistung findet sich auf der Homepage
Hinweis
Der LZMA-Algorithmus stellt beim Komprimieren sehr hohe Ansprüche an die Systemleistung, insbesondere an den Arbeitsspeicher
  • Leistungsschwache Systeme werden spätestens bei großen Datenmengen und höheren Kompressionsstufen völlig in die Knie gehen ("System Lock-up")
  • Um das Potential voll auszuschöpfen, sollten mindestens 2 GiB Arbeitsspeicher vorhanden sein und auch der Prozessor sollte eine Gesamtleistung von 2 GHz nicht unterschreiten

Nach der Installation wird p7zip mit 7zr aufgerufen und p7zip-full nur mit 7z

  • Im Verlaufe dieses Artikels wird von p7zip-full ausgegangen, der Befehl ist bei Bedarf auszutauschen

Benutzung

Achtung!

7z alleine ist für ein Backup eines kompletten Linux-/Unix-Systems nicht geeignet, da es sämtliche Zugriffsrechte ignoriert

  • Eine Möglichkeit, dieses Problem zu umgehen, findet sich im Abschnitt Tipps

Die allgemeine Syntax von p7zip-full lautet

7z OPTIONEN SWITCHES AUSGABE EINGABE

Beispiel

7z a -t7z -m0=LZMA -mmt=on -mx=9 -md=96m -mfb=256 /home/peter/kirschkuchenrezept.7z /home/peter/kirschkuchenrezept.doc

7z erkennt Verzeichnisse (rekursives arbeiten) selbstständig, es muss kein spezieller Parameter angegeben werden

  • Optionen werden immer als Buchstaben am Anfang angegeben, während die darauf folgenden Switches immer ein vorstehendes - haben

Optionen

Mit den Optionen wird zuerst grob festgelegt, was zu tun ist

Optionen
Option Beschreibung
a Dateien/Verzeichnisse einem Archiv hinzufügenoder eine Archivdatei erstellen
d Dateien/Verzeichnisse aus einem Archiv löschen
e Einfaches Entpacken aller Dateien aus dem Archiv
l Inhalt eines Archivs auflisten
t Archiv auf Beschädigungen prüfen
u Archivinhalt aktualisieren
x Archiv entpacken und dabei die Verzeichnisstruktur erhalten

Switches

Im folgenden nur ein Auszug der wichtigsten Switches, welche die genaue Vorgehensweise festlegen

  • Der Fokus liegt hier auf dem LZMA-Algorithmus
  • Informationen zu weiteren Switches finden sich in den Manpages
Switches
Switch Beschreibung
-l keine Symlinks archivieren, sondern ihr Ziel
-m Algorithmus für Kompression festlegen (zum Beispiel -m0=LZMA)
-mhe=on Den Header des Archivs verschlüsseln
-oZIEL Nicht ins gleiche Verzeichnis entpacken (Standard), sondern nach "ZIEL"
-pPASSWORT Archiv mit Passwort schützen
-tDATEIFORMAT Dateiformat festlegen (zum Beispiel -t7z)
-mmt=on Multithreading für Mehrkernprozessoren oder Multiprozessorsysteme aktivieren
-mx=STUFE Stufe der Kompressionsstärke (1=schnell und schlecht, 9=langsam und gut)
-mfb=NUMMER Anzahl der Wörterbücher (8, 12, 16, 24, 32, 48, 64, 96, 128, 192, 256, 273)
-md=NUMMER Größe der Wörterbücher (64k, 1m, 2m, 4m, 6m, 8m, 12m, 16m, 24m, 32m, 48m, 64m, 96m, 128m)
-ms=on Progressive ("solid") Kompression

Tipps

  • Je höher die anstehenden Nummern bei den Switches -mfb und -md sind, desto stärker ist die Kompression
  • Dies wirkt sich allerdings nicht nur auf die benötigte Zeit des Vorgangs aus, sondern auch auf die Systemauslastung, insbesondere die des Arbeitsspeichers
  • Es sei nochmals darauf hingewiesen, dass der Switch -md nicht die maximale Beanspruchung des Arbeitsspeichers definiert
  • Die progressive Komprimierung wird die Effizienz immer dann erhöhen, wenn mehrere Dateien gepackt werden sollen – insbesondere, wenn diese sich ähneln
  • Der nötige Aufwand kann durch die Methode jedoch stark in die Höhe schießen, sie sollte mit Bedacht eingesetzt werden
  • Ist ein Archiv progressiv komprimiert worden, können einzelne Dateienoder Verzeichnisse nur entpackt werden, indem alles, was sich im Archiv davor befindet, abgearbeitet wird
  • In einem solchem Szenario dauert das Entpacken länger
  • Beim Entpacken des gesamten Archivs gibt es hingegen keinen sonderlichen Zeitunterschied
  • Um doch ein Backup eines Linux-/Unix-Systems mit 7z zu komprimieren, empfiehlt es sich, dieses vorher mit tar zu einem einzelnen Datenstrom zusammenzufügen
  • Beispiel

tar cf - PFAD | 7za a -si ERGEBNIS.tar.7z

Das Entpacken eines solchen Archives läuft dann wieder in umgekehrter Reihenfolge ab (Achtung! Das Zielverzeichnis ZIELPFAD muss vorhanden sein!)

7za x -so ERGEBNIS.tar.7z | tar xf - -C ZIELPFAD

Terminal

Man muss nicht zwangsläufig auf die graphischen Archivmanager zurückgreifen

  • Alle Packprogramme kann man auch von einem Terminal heraus bedienen
  • Wichtig dabei ist natürlich, dass die oben genannten Packprogramme installiert sind

Ace

Falls unance-nonfree installiert ist

unace (OPTIONEN) ARCHIVNAME.ace

Falls unace installiert ist

unace e ARCHIVNAME.ace

Rar

Archive erstellen

# Allgemein rar a ARCHIVNAME DATEI1 (DATEI2) # Beispiel rar a -v2048 test.rar -p datei1 datei2 datei3

Archive entpacken

Manche unter Windows erstellte Rar-Archive lassen sich aus unbekannten Gründen nicht mit Ark unter KDE öffnen

  • Hier ist man gezwungen, auf das Entpacken im Terminal zurückzugreifen, was in der Regel einwandfrei funktioniert
  • Dazu geht man wie folgt vor

# Allgemein unrar x ARCHIVNAME.rar # Beispiel unrar x -pPasswort ~/Desktop/beispiel.rar

Ein Sonderfall ergibt sich, wenn bei einer passwortgeschützten Datei das Passwort mit Sonderzeichen, wie etwa ~ endet

  • In diesem Fall führt der o
  • g
  • Befehl zu der Fehlermeldung

bash: !~: event not found

Das Problem kann man umgehen, indem man zunächst das Entpacken ohne Passworteingabe einleitet (siehe Befehl oben)

  • Dann wird man automatisch nach dem Passwort gefragt, welches man nun eingeben kann
  • Achtung: Das Passwort wird bei der Eingabe nicht angezeigt

Enter password (will not be echoed) for Dateiname.rar

Kommandos / Optionen Bemerkung
a Dateien sollen hinzugefügt werden
e Dateien sollen entpackt werden
x Dateien sollen in die in der Datei enthaltene Verzeichnisstruktur entpackt werden
-m[KOMPRESSIONSLEVEL] Setzt den Kompressionslevel ( -m0 = ohne; -m3 = standard; -m5 = maximal) (optional)
-v[GROESSE][EINHEIT] Legt die Dateigröße fest, als Einheit kann man u.a
  • Byte (b), Kilobyte (k), und Megabyte (m) wählen
  • Wenn man nun Teilarchive haben will, die zum Beispiel 100 Megabyte groß sind, wählt man folgende Option -v100m
  • Die Größe der Teilarchive geht bei 1000 Bytes los, kleinere Teilarchive kann man nicht erstellen (optional)
-rr[GROESSE][EINHEIT] Fügt Wiederherstellungsinformationen hinzu
  • Diese können bspw
  • in Prozent angegeben werden, für fünf Prozent gibt man also -rr5% an
  • Wird keine Einheit angegeben, gibt die Größenangabe die Anzahl der Sektoren an, die zur Wiederherstellung verwendet werden können (optional)
-p Setzt ein Passwort, das man nach der Eingabe festlegt (optional)
-hp Setzt auch ein Passwort, Unterschied zu -p ist, dass das Archiv nun komplett verschlüsselt wird, das heißt die Dateinamen im Archiv werden auch verschlüsselt (optional)

tar.gz/tar.bz2

tar.gz

Archive erstellen

# Allgemein

tar -czf ARCHIVNAME.tar.gz DATEI1/VERZEICHNIS1 (DATEI2/VERZEICHNIS2)

# Beispiel

tar -czf beispiel.tar.gz test example

# oder

tar -czf beispiel.tar.gz test/

Dabei wird im ersten Beispiel ein Archiv beispiel.tar.gz aus den Dateien test und example erstellt

  • Im zweiten Beispiel wird aus dem Verzeichnis test/ ein Archiv erstellt

Archive entpacken

# Allgemein

tar -xzf ARCHIVNAME.tar.gz

# Beispiel tar -xzf beispiel.tar.gz

tar.bz2

Archive erstellen

# Allgemein

tar -cjf ARCHIVNAME.tar.bz2 DATEI1/VERZEICHNIS1 (DATEI2/VERZEICHNIS2)

# Beispiel

tar -cjf beispiel.tar.bz2 test example

# oder tar -cjf beispiel.tar.bz2 test/

Dabei wird im ersten Beispiel ein Archiv beispiel.tar.bz2 aus den Dateien test und example erstellt

  • Im zweiten Beispiel wird aus dem Verzeichnis test/ ein Archiv erstellt

Archive entpacken

# Allgemein

tar -xjf ARCHIVNAME.tar.bz2

# Beispiel

tar -xjf beispiel.tar.bz2

Dabei entsteht in der Regel ein neues Verzeichnis, in welches man dann wechseln kann

  • Manchmal möchte man den Inhalt des Archivs auch direkt an einen Ort entpacken (für .tar.bz2 bitte die Befehle entsprechend ändern)

# Allgemein

tar -xjf ARCHIVNAME.tar.bz2 -C ZIELORDNER

# Beispiel

tar -xjf php-5.1.0.tar.bz2 -C /opt/php5

UnZip

# Datei entpacken unzip ARCHIVNAME.zip # in Ordner entpacken unzip ARCHIVNAME.zip -d ZIELORDNER

atool, Unpack und dtrx

Um sich nicht die unterschiedlichen Befehle und Parameter der verschiedenen Archivformattools zu merken, gibt es atool, Unpackoder dtrx

  • Die Programme kennen die Syntax um Archive zu entpacken und ersparen dem Benutzer die Eingabe des kompletten Befehls
  • So kann man dann mit einem einzigen Befehl wie
aunpack ARCHIV

oder

unp ARCHIV

oder

dtrx ARCHIV

bequem im Terminal [4] entpacken

  • Weitere Informationen zu Unpack findet man im Wiki unter unp

Die Funktionalität von atool geht sogar noch weiter, so können u.a

  • mit apack Archive erstellt werden oder mit als Archivinhalte aufgelistet werden. atool kann aus den universe-Quellen installiert werden:* atool (universe)

Analog dtrx: * dtrx (universe)

zless und bzless

zless und bzless sind zwei kleine Programme, mit denen sich gepackte Textdateien (.gz und .bz2) betrachten lassen, ohne sie vorher manuell entpacken zu müssen

Weitere Packprogramme

cabextract

cabextract ist zum Entpacken von Cabinet-Dateien, welche im Format .cab vorliegen, gedacht

innoextract

innoextract extrahiert Installationsdateien, welche mit Inno Setup erstellt wurden

unshield

unshield ist wie cabextract zum Entpacken von Cabinet-Dateien gedacht, jedoch für Anwendungen, die InstallShield verwenden

PeaZip

PeaZip ist ein relativ junges plattformübergreifendes Projekt (2005) und stellt eine gute und funktionserweiterte Alternative zu den obigen Archivmanagern dar

Es unterstützt praktisch alle im Rahmen der lizenzrechtlichen Bestimmungen verfügbaren Formate und bietet eine kaum mehr überschaubare

Vielfalt an Funktionen, Optionen und Filtern

  • Besondere Beachtung verdienen die umfangreichen Möglichkeiten zur Datensicherheit (verschiedene Kryptografieen, Löschen durch mehrfaches Überschreiben usw.)

Im Gegensatz zu den oben beschriebenen Archivmanagern ist PeaZip kein grafisches Frontend für die einzelnen oben beschriebenen Packprogramme, sondern ein eigenständiges Pack- und Archivierungsprogramm

Es ist also nicht auf die separate Installation von Packprogrammen angewiesen


Anhang

Siehe auch

Dokumentation

RFC
RFC Titel
0000
Man-Page
Info-Pages

Links

Projekt
Weblinks