Linux/Datei/Kompression/Archivmanager

Aus Foxwiki
Version vom 1. Dezember 2024, 00:47 Uhr von Dirkwagner (Diskussion | Beiträge) (Die Seite wurde neu angelegt: „== 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 beschri…“)
(Unterschied) ← Nächstältere Version | Aktuelle Version (Unterschied) | Nächstjüngere Version → (Unterschied)

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