Was ist eine .gz-Datei?
Die Dateiendung .gz steht für das Komprimierungsformat Gzip. Dabei wird eine einzelne Datei platzsparend komprimiert.
Beispiele:
backup.sql.gz access.log.gz daten.csv.gz
Gzip reduziert die Dateigröße oft erheblich und spart Speicherplatz sowie Übertragungszeit.
Prüfen, ob gzip installiert ist
Auf den meisten Linux-Distributionen ist Gzip bereits vorinstalliert.
Version anzeigen:
gzip --version
Beispielausgabe:
gzip 1.13
Falls Gzip nicht installiert ist:
Debian / Ubuntu
sudo apt update sudo apt install gzip
Rocky Linux / AlmaLinux / CentOS
sudo dnf install gzip
Eine .gz-Datei entpacken
Angenommen, Sie haben folgende Datei:
backup.sql.gz
Zum Entpacken:
gunzip backup.sql.gz
Danach erhalten Sie:
backup.sql
Die ursprüngliche .gz-Datei wird dabei gelöscht.
Alternativ mit gzip entpacken
Dasselbe funktioniert auch mit:
gzip -d backup.sql.gz
Ergebnis:
backup.sql
Die Originaldatei behalten
Oft möchte man die komprimierte Datei behalten.
Verwenden Sie dafür:
gzip -dk backup.sql.gz
Optionen:
ParameterBedeutung-dEntpacken-kOriginaldatei behalten
Ergebnis:
backup.sql.gz backup.sql
Beide Dateien bleiben erhalten.
Inhalt einer .gz-Datei anzeigen ohne Entpacken
Gerade bei Logdateien sehr praktisch:
zcat access.log.gz
oder:
gzcat access.log.gz
(Auf manchen Distributionen verfügbar.)
Durch große Dateien blättern
zless access.log.gz
Navigation:
Pfeiltasten Bild auf / ab q = Beenden
In komprimierten Dateien suchen
Suche nach Fehlern:
zgrep ERROR access.log.gz
Suche nach einer IP-Adresse:
zgrep "192.168.1.100" access.log.gz
Mehrere Treffer zählen:
zgrep -c ERROR access.log.gz
Mehrere .gz-Dateien gleichzeitig entpacken
Alle Gzip-Dateien im aktuellen Verzeichnis:
gunzip *.gz
oder:
gzip -d *.gz
Rekursiv alle .gz-Dateien entpacken
Beispiel:
find /backup -name "*.gz" -exec gunzip {} \;
Alle .gz-Dateien unterhalb von /backup werden entpackt.
.tar.gz-Dateien entpacken
Sehr häufig findet man Archive wie:
software.tar.gz
Hier wurden zwei Verfahren kombiniert:
- tar = Archivierung
- gzip = Komprimierung
Entpacken:
tar -xzf software.tar.gz
Parameter:
OptionBedeutung-xEntpacken-zgzip verwenden-fDateiname folgtInhalt eines .tar.gz-Archivs anzeigen
Ohne Entpacken:
tar -tzf software.tar.gz
Beispiel:
software/ software/install.sh software/README.md
Entpacken in ein bestimmtes Verzeichnis
tar -xzf software.tar.gz -C /opt/
Ergebnis:
/opt/software/
Datenbank-Backups direkt importieren
MySQL/MariaDB:
gunzip < backup.sql.gz | mysql -u root -p datenbank
Alternativ:
zcat backup.sql.gz | mysql -u root -p datenbank
PostgreSQL-Backup importieren
gunzip < backup.sql.gz | psql -U postgres datenbank
oder:
zcat backup.sql.gz | psql -U postgres datenbank
Speicherplatz prüfen
Vor dem Entpacken:
ls -lh backup.sql.gz
Nach dem Entpacken:
ls -lh backup.sql
Beispiel:
backup.sql.gz 250 MB backup.sql 3.4 GB
Gerade Datenbank-Backups benötigen nach dem Entpacken oft deutlich mehr Speicherplatz.
Häufige Fehlermeldungen
Datei nicht gefunden
gzip: backup.sql.gz: No such file or directory
Prüfen:
ls -lah
Datei ist beschädigt
gzip: unexpected end of file
Prüfen:
gzip -t backup.sql.gz
Keine Ausgabe bedeutet:
Datei ist in Ordnung
Zu wenig Speicherplatz
Verfügbaren Platz prüfen:
df -h
Besonders bei großen Datenbank-Backups sollte ausreichend freier Speicher vorhanden sein.
Nützliche Befehlsübersicht
AufgabeBefehlEntpackengunzip datei.gzEntpacken mit Behaltengzip -dk datei.gzInhalt anzeigenzcat datei.gzDurchblätternzless datei.gzSuchenzgrep suchwort datei.gzArchiv entpackentar -xzf archiv.tar.gzArchivinhalt anzeigentar -tzf archiv.tar.gzIntegrität prüfengzip -t datei.gz
Das Entpacken von .gz-Dateien gehört zu den grundlegenden Aufgaben eines Linux-Administrators. Mit den Werkzeugen gunzip, gzip, zcat, zgrep und tar lassen sich komprimierte Dateien schnell analysieren, durchsuchen und entpacken. Besonders bei Logdateien, Datenbank-Backups und Software-Downloads spart der direkte Zugriff auf komprimierte Dateien Zeit und Speicherplatz.
Wer regelmäßig Linux-Server administriert, sollte diese Befehle kennen, da sie im Alltag nahezu täglich zum Einsatz kommen.