Zum Inhalt springen

Linux/Datenkompression: Unterschied zwischen den Versionen

Aus Foxwiki
K Textersetzung - „==== Links ====“ durch „=== Links ===“
 
(32 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt)
Zeile 1: Zeile 1:
'''Linux/Datei/komprimierenArchivieren''' - Datei archivieren und komprimieren
'''Linux/Datenkompression''' - Datei archivieren und komprimieren


== Beschreibung ==
== Beschreibung ==
Dateien zu Archiven zusammenfassen und Dateigröße verringern
; 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
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
; [[Archiven]] und [[komprimierte Dateien]]
* Ein Archiv ist ein unkomprimierter Behälter für Dateien
Ein Archiv ist ein unkomprimierter Behälter für Dateien
* Dieses Archiv kann durch Kompressionsverfahren komprimiert werden
* Dieses Archiv kann durch Kompressionsverfahren komprimiert werden
* Es gibt allerdings ein paar Formate, die gleich auch eine Komprimierung beinhalten
* Es gibt allerdings ein paar Formate, die gleich auch eine Komprimierung beinhalten
== 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 [http://wiki.ubuntuusers.de/Archivmanager?redirect=no#source-1 [1]] werden.
* 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/gzip gzip] - für Dateien vom Typ GZip
|-
| [http://wiki.ubuntuusers.de/lzop lzop] - auf Geschwindigkeit optimiertes Packprogramm
|-
| zip || Packen von Zip-Archiven
|-
| unzip || Entpacken von Zip-Archiven
|-
| xz-utils <br>xz-lzma || XZ-Dateien und den Vorgänger LZMA
|-
| [http://wiki.ubuntuusers.de/7z p7zip-full] || Packen/Entpacken mittels LZMA Algorithmus von 7-Zip-Archiven und Entpacken von AES-verschlüsselten Zip-Archiven
|-
| lha || [http://wiki.ubuntuusers.de/Archivmanager?redirect=no#source-2 [2]] || LZH-Archiver, wird von [http://wiki.ubuntuusers.de/Ark Ark] benutzt
|}
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
; 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]]
== 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]]
== 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 [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
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
=== Rar ===
==== Archive erstellen ====
<nowiki># Allgemein</nowiki>
rar a ARCHIVNAME DATEI1 (DATEI2)
<nowiki># Beispiel</nowiki>
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
<nowiki># Allgemein</nowiki>
unrar x ARCHIVNAME.rar
<nowiki># Beispiel</nowiki>
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
{| class="wikitable sortable"
|-
| | '''Kommandos / Optionen '''
| | '''Bemerkung '''
|-
| | <tt>a</tt>
| | Dateien sollen hinzugefügt werden
|-
| | <tt>e</tt>
| | Dateien sollen entpackt werden
|-
| | <tt>x</tt>
| | Dateien sollen in die in der Datei enthaltene Verzeichnisstruktur entpackt werden
|-
| | <tt>-m[KOMPRESSIONSLEVEL]</tt>
| | Setzt den Kompressionslevel ( <tt>-m0</tt> = ohne; <tt>-m3</tt> = standard; <tt>-m5</tt> = maximal) (optional)
|-
| | <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)
|-
| | <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)
|-
| | <tt>-p</tt>
| | Setzt ein Passwort, das man nach der Eingabe festlegt (optional)
|-
| | <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)
|-
|}
== gzip ==
=== tar.gz/tar.bz2 ===
==== tar.gz ====
==== Archive erstellen ====
<nowiki># Allgemein</nowiki>
tar -czf ARCHIVNAME.tar.gz DATEI1/VERZEICHNIS1 (DATEI2/VERZEICHNIS2)
<nowiki># Beispiel</nowiki>
tar -czf beispiel.tar.gz test example
<nowiki># oder</nowiki>
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 ====
<nowiki># Allgemein</nowiki>
tar -xzf ARCHIVNAME.tar.gz
<nowiki># Beispiel</nowiki>
tar -xzf beispiel.tar.gz
=== tar.bz2 ===
==== Archive erstellen ====
<nowiki># Allgemein</nowiki>
tar -cjf ARCHIVNAME.tar.bz2 DATEI1/VERZEICHNIS1 (DATEI2/VERZEICHNIS2)
<nowiki># Beispiel</nowiki>
tar -cjf beispiel.tar.bz2 test example
<nowiki># oder</nowiki>
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 ====
<nowiki># Allgemein</nowiki>
tar -xjf ARCHIVNAME.tar.bz2
<nowiki># Beispiel</nowiki>
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)
<nowiki># Allgemein</nowiki>
tar -xjf ARCHIVNAME.tar.bz2 -C ZIELORDNER
<nowiki># Beispiel</nowiki>
tar -xjf php-5.1.0.tar.bz2 -C /opt/php5
=== UnZip ===
<nowiki># Datei entpacken</nowiki>
unzip ARCHIVNAME.zip
<nowiki># in Ordner entpacken</nowiki>
unzip ARCHIVNAME.zip -d ZIELORDNER
=== 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], [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
oder
unp ARCHIV
oder
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]
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'')
=== 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
=== Weitere Packprogramme ===
==== 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
==== innoextract ====
[http://wiki.ubuntuusers.de/innoextract innoextract] extrahiert Installationsdateien, welche mit [http://de.wikipedia.org/wiki/Inno_Setup Inno Setup] erstellt wurden
==== 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
==== PeaZip ====
[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
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 ==
== Anhang ==
Zeile 247: Zeile 14:
* [[Linux/Datei/Kompression/Archivmanager]]
* [[Linux/Datei/Kompression/Archivmanager]]
* [[Linux/Datei/Kompression/Archivformate]]
* [[Linux/Datei/Kompression/Archivformate]]
{{Special:PrefixIndex/{{BASEPAGENAME}}}}
{{Special:PrefixIndex/{{BASEPAGENAME}}/}}
==== Dokumentation ====
=== Links ===
===== Man-Page =====
==== Projekt ====
===== Info-Pages =====
==== Weblinks ====
==== Links ====
===== Projekt =====
===== Weblinks =====
</noinclude>


[[Kategorie:Linux/Datenkompression]]
[[Kategorie:Linux/Datei/Archiv]]
[[Kategorie:Linux/Backup]]
[[Kategorie:Linux/Backup]]
[[Kategorie:Linux/Datei/Archiv]]
 
[[Kategorie:Linux/Datei/Kompression]]
</noinclude>
[[Kategorie:Linux/Datenkompression]]

Aktuelle Version vom 22. März 2025, 01:40 Uhr

Linux/Datenkompression - Datei archivieren und komprimieren

Beschreibung

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

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

Anhang

Siehe auch

Links

Projekt

Weblinks