Compressie

Uit Linuxdocs.nl
Ga naar: navigatie, zoeken

Het compressieprogramma gzip

Met het programma gzip kan de ruimte die een bestand op de vaste schijf in beslag neemt,worden verkleind door dit bestand te comprimeren. In gecomprimeerde vorm is een dergelijk bestand echter onbruikbaar.
Pas na de decompressie bevindt het bestand zich weer in zijn oorspronkelijke vorm en kan zoals eerder weer worden gebruikt. Gzip comprimeert de gegevens op basis van het zogeheten Lempel-Ziv-algoritme.

Bestanden comprimeren

Om bestanden te comprimeren, geeft u de naam van het bestand als parameter op bij de aanroep van het programma gzip

[michaell@michaell.nl michaell]$ gzip bestand

Dit heeft tot gevolg dat de gecomprimeerde versie het oorspronkelijke bestand overschrijft en er de extensie .gz aan toekent. Het programma kan niet op verwijzingen (links) worden toegepast. Deze kunnen echter wel als .tar archieven kunnen ingepakt en dan worden gecomprimeerd. Ook voor het inpakken van directory's dient u terug te grijpen op het programma tar.

De compressiesnelheid en de mate van compressie (wat gevolgen heeft voor de omvang van het uiteindelijke gecomprimeerde bestand) kan via de parameters worden beïnvloed. Een snelle compressie, die u opgeeft met de optie -fast, leidt tot een groter bestand, via de optie -best krijgt u bij een langere compressietijd een kleiner resultaatbestand.

[michaell@michaell.nl michaell]$ gzip --best bestand
[michaell@michaell.nl michaell]$ gzip --fast bestand

Gzip voert geen controle uit of het gecomprimeerde bestand groter is dan het oorspronkelijke bestand. Het oorspronkelijke bestand wordt altijd door het gecomprimeerde exemplaar vervangen. In de regel za de bestandsgrootte niet toenemen, het tegendeel is veel meer het geval, wat natuurlijk ook het doel is van compressie. Mocht u echter proberen een gecomprimeerd bestand nog een keer te comprimeren, dan kan het gebeuren dat u met een groter bestand zit opgescheept.

Naast het wijd bekende zip-formaat kunnen, afhankelijk van de installatie van externe programma's, ook andere archiefformaten worden gecomprimeerd en gedecomprimeerd.

Bestanden decomprimeren

Voor het decomprimeren van bestanden is het programma gunzip bedoeld, dat conform dezelfde syntaxis als gzip wordt aangeroepen.

[michaell@michaell.nl michaell]$ gunzip bestand.gz

Inplaats van gunzip kunt u ook het commando gzip -d geven. Beide varianten hebben tot gevolg dat het gecomprimeerde bestand wordt vervangen door het oorspronkelijke bestand en dat de extensie .gz uit de bestandsnaam wordt verwijderd.

De programma's gzip en gunzip kunnen ook bestanden uitpakken die met programma's zip, compress en pack tot stand zijn gebracht. Dit zijn eveneens compressieprogramma's.

De programma's reageren niet alleen op de extensie gz maar ook op de extensies -gz, z, -z en Z. Ook kunnen ze met bestanden overweg die de extensie .tgz en .taz voor gecomprimeerde tar archieven hebben, hoewel deze eigelijk zouden moeten eindigen op .tar.gz of .tar.Z.

Het compressieprogramma bzip2

Bzip2 neemt in wezen dezelfde taken waar als gzip, namelijk het comprimeren van bestanden. Maar als nieuwer programma realiseert bzip2 een hogere compressieverhouding. De syntaxis is gelijk aan die van gzip.

<p />
[michaell@michaell.nl michaell]$ bzip2 bestand<br />
<p />

Dit commando comprimeert het bestand, met als resultaat een nieuw bestand met de extensie bz2. Een met bzip2 gecomprimeerd bestand kan natuurlijk ook gedecomprimeerd:

[michaell@michaell.nl michaell]$ bunzip2 bestand.bz2
<p /> <p>Dit commando zet het bestand bestand.bz2 om naar het oorspronkelijke, niet gecomprimeerde bestand.

Archieven kunnen dus, naast het standaardformaat .tar.gz dus ook de extensie .tar.bz2 hebben. Helaas is er voor ouderen tar versies geen optie waarmee u een .tar.bz2 archief kunt uitpakken. Bij gzip gecomprimeerde archieven kunt u het commando

[michaell@michaell.nl michaell]$ tar -xzf pakket.tar.gz

gebruiken als afkorting van de twee commando's

[michaell@michaell.nl michaell]$ gunzip pakket.tar.gz
[michaell@michaell.nl michaell]$ tar -xf pakket.tar

Bij .tar.bz2-archieven zijn er bij oude tar versies altijd twee commando's nodig

[michaell@michaell.nl michaell]$ bunzip2 pakket.tar.bz2
[michaell@michaell.nl michaell]$ tar -xf pakket.tar

Bij het nieuwe tar programma kunt u de opdracht

[michaell@michaell.nl michaell]$ tar xvyf pakket.tar.bz2

opgeven

Als u de hulpprogramma's bzip2 en bunzip2 niet kunt vinden dan is hoogst waarschijnlijk het bzip2-pakket niet geïnstalleerd. Dat kunt u echter nu alsnog doen: het pakket is op de eerste installatie cd opgeslagen en heeft de naam /RedHat/RPMS/bzip2-xxx.i386.rpm. Om dit programma te installeren, geeft u (als systeembeheerder root) de volgende commando's:

[michaell@michaell.nl michaell]$ su
password: _
[root@michaell.nl michaell]# mount /mnt/cdrom
[root@michaell.nl michaell]# rpm --install /mnt/cdrom/RedHat/RPMS/bzip2-xxx.i386.rpm
[root@michaell.nl michaell]# exit
[michaell@michaell.nl michaell]$ _



How-TO's | Hoofdpagina | Linux Nieuws | Externe links | Help