bzip2(1): Skillnad mellan sidversioner

Från Wiki.linux.se
Hoppa till navigering Hoppa till sök
(Skapade sidan med '= bzip2(1) = == NAMN == bzip2, bunzip2 – blocksorterande filkompressor, v1.0.4 bzcat – dekomprimerar filer till standardutmatning bzip2recover – återställer data från skadade bzip2-filer == SYNOPSIS == <pre> bzip2 [ -cdfkqstvzVL123456789 ] [ filnamn ... ] bunzip2 [ -fkvsVL ] [ filnamn ... ] bzcat [ -s ] [ filnamn ... ] bzip2recover filnamn </pre> == BESKRIVNING == '''bzip2''' komprimerar filer med hjälp av Burrows-Wheeler blocksorterande textkomp...')
 
(Ingen skillnad)

Nuvarande version från 28 augusti 2025 kl. 16.52

bzip2(1)

NAMN

bzip2, bunzip2 – blocksorterande filkompressor, v1.0.4 bzcat – dekomprimerar filer till standardutmatning bzip2recover – återställer data från skadade bzip2-filer

SYNOPSIS

 bzip2 [ -cdfkqstvzVL123456789 ] [ filnamn ... ]
 bunzip2 [ -fkvsVL ] [ filnamn ... ]
 bzcat [ -s ] [ filnamn ... ]
 bzip2recover filnamn
 

BESKRIVNING

bzip2 komprimerar filer med hjälp av Burrows-Wheeler blocksorterande textkomprimeringsalgoritm samt Huffman-kodning. Komprimeringen är generellt betydligt bättre än LZ77/LZ78-baserade kompressorer, och närmar sig prestandan hos PPM-familjen av statistiska kompressorer.

Kommandoradsflaggorna liknar avsiktligt de som används i gzip, men är inte identiska. bzip2 ersätter varje fil med en komprimerad version, som får suffixet .bz2. Filernas ändringsdatum, rättigheter och (om möjligt) ägarskap bevaras.

bzip2 och bunzip2 skriver inte över filer om inte flaggan **-f** anges. Utan angivna filer läser och skriver bzip2 till/från standardflöden (dock ej till terminal som utdata).

bunzip2 (eller bzip2 -d) dekomprimerar angivna filer. Om filerna inte är skapade av bzip2 ignoreras de med en varning. Namn härleds enligt regler som:

* filename.bz2 → filename  
* filename.tbz2 → filename.tar  
* annars → originalnamn.out  

bunzip2 hanterar även sammanfogade .bz2-filer. Flaggan **-c** gör att komprimering/dekomprimering sker till standardutmatning. bzcat (eller bzip2 -dc) dekomprimerar till standardutmatning.

bzip2 läser även argument från miljövariablerna BZIP2 och BZIP (i den ordningen).

Komprimering sker alltid, även om resultatet blir något större. Filer <100 byte tenderar att bli större p.g.a. overhead på ~50 byte.

Som skydd används 32-bitars CRC för att säkerställa att dekomprimerade filer motsvarar originalet. Om en fil är skadad kan man använda bzip2recover.

Returkoder:

* 0 – normal avslutning  
* 1 – miljöproblem (fil saknas, I/O-fel etc.)  
* 2 – skadad komprimerad fil  
* 3 – internt fel (bugg)  

FLAGGOR

-c --stdout
Komprimera/dekomprimera till standardutmatning.
-d --decompress
Tvinga dekomprimering.
-z --compress
Tvinga komprimering.
-t --test
Testa integritet utan att dekomprimera.
-f --force
Tvinga överskrivning, bryt hårda länkar, passera igenom filer utan korrekt magiska bytes.
-k --keep
Behåll originalfiler.
-s --small
Använd mindre minne (~2300kB), långsammare. Blockstorlek 200k vid komprimering.
-q --quiet
Undertryck icke-kritiska varningar.
-v --verbose
Visa kompressionsförhållande, ökad detaljnivå med flera -v.
-L --license, -V --version
Visa version och licens.
-1 .. -9
Ange blockstorlek 100k–900k (default 900k). --fast och --best alias.
--
Behandla efterföljande argument som filnamn (även om de börjar med -).
--repetitive-fast, --repetitive-best
Obsoleta sedan 0.9.5.

MINNESANVÄNDNING

Komprimering sker i block (default 900kB).

* Komprimering kräver ~400k + (8 × blockstorlek).  
* Dekomprimering kräver ~100k + (4 × blockstorlek) eller 100k + (2.5 × blockstorlek) med -s.  

Exempel:

* Blockstorlek -9 (900k) kräver ~7600kB vid komprimering och ~3700kB vid dekomprimering.  
* Med flaggan -s kan dekomprimering göras i ~2300kB men långsammare.  

ÅTERSTÄLLA DATA FRÅN SKADADE FILER

Eftersom bzip2 arbetar blockvis (vanligen 900kB/block), kan oskadade block ofta återställas. Varje block har en CRC som gör det möjligt att särskilja skadade från intakta.

bzip2recover söker efter block och skriver ut dem som separata filer:

rec00001file.bz2, rec00002file.bz2, ...  

Dessa kan sedan testas (bzip2 -t) och dekomprimeras. Användbart främst för stora filer med många block.

PRESTANDA

Komprimering kan vara långsam på filer med långa repetitiva sekvenser. Versioner ≥0.9.5 hanterar detta bättre. Skillnaden mellan värsta och genomsnittliga fall är ca 10:1 (tidigare versioner 100:1). Dekomprimeringshastighet påverkas inte.

Prestandan beror mest på minnesåtkomst och cachemissar. Maskiner med stora cacheminnen ger bättre resultat.

BEGRÄNSNINGAR

* Felmeddelanden för I/O är inte alltid tydliga.  
* Denna sida gäller version 1.0.4. Komprimerade data är kompatibla med äldre versioner (0.9.0 och uppåt kan dekomprimera flera sammanfogade filer).  
* Äldre bzip2recover (<1.0.2) hade begränsning till 512 MB p.g.a. 32-bitars heltal. Nyare använder 64-bitars.  

FÖRFATTARE

Julian Seward, jseward@bzip.org http://www.bzip.org

Idéerna bygger på arbete av:

* Michael Burrows & David Wheeler (blocksortering)  
* David Wheeler (Huffman-kodning)  
* Peter Fenwick (kodningsmodell i ursprungliga bzip)  
* Alistair Moffat, Radford Neal & Ian Witten (aritmetisk kodning)  

Många andra har bidragit med förbättringar, patchar, maskiner och idéer.

SE ÄVEN

7z(1), 7za(1), advdef(1), afio(1), archive_read(3), archivemount(1), ark(1), bzdiff(1), bzgrep(1), bzless(1), bzz(1), cboard(6), disktype(1), dpkg-scanpackages(1), groffer(1), kup(1), lbzip2(1), libarchive(3), lrunzip(1), lrzcat(1), lrzip(1), lrztar(1), lrzuntar(1), lzop(1), mailx(1), mondoarchive(8), mondorestore(8), nomarch(1), ntfsclone(8), pbzip2(1), pcpintro(1), pmie_daily(1), pmlogextract(1), pmlogger_daily(1), pmlogreduce(1), pmnewcontext(3), xz(1), xzdiff(1), xzgrep(1).


Sidslut

Orginalhemsidan på Engelska : https://linux.die.net/man/1/bzip2 Det här är en maskinöversättning av Linux man sidor till svenska. Om du hittar fel är vi tacksamma om du rapporterar dem via formuläret som finns på https://www.linux.se/kontaka-linux-se/

Tack till Datorhjälp som har sponsrat Linux.se med webbhotell.