varför ska jag använda tar.xz istället för tar.gz? xz är ett förlustfritt datakomprimeringsprogram och filformat [duplikat]

Denna fråga har redan svar här :

Kommentarer

  • Jag tror att du måste ställa in upp ett enkelt test och se vilket komprimeringsprogram som är " bäst " för dig. Ingen annan kan berätta för dig.

Svara

gzip och xz använder två olika algoritmer, och därför fungerar de olika, både när det gäller komprimeringsnivån de uppnår och när det gäller mängden resurser de förbrukar när de komprimerar eller dekomprimerar.

I allmänt , xz uppnår högre komprimeringsförhållanden, men behöver mycket mer minne och tid.

Jag personligen använd xz för arkivering av data; stora filer som jag behöver lägga undan under lång tid. Jag använder gzip annars eftersom det vanligtvis är snabbare.

Testa dem båda och se hur de presterar i ditt genomsnitt tar (eller vad som helst) fil.

Svar

xz har blivit lite av en standard när det gäller pakethantering de senaste åren.

LZMA2-komprimeringsalgoritmen xz använder, är exceptionellt effektivt med textdata (och ”textliknande”) data. Jag personligen använder den för nästan vad som helst, där beräkningshastighet inte är ett problem (xz dekomprimerar mycket snabbare än komprimering, det är faktiskt ett av dess designmål.

Så det är bra för saker som arkivering eller säkerhetskopiering (generellt sett, filer som dekomprimeras mycket, men där data komprimeras inte hela tiden eller ändras osv.). Det är inte ett så bra beslut för strömkomprimering – åtminstone inte så ofta, för LZMA2 är inte exakt lätt på resurser när du komprimerar.

Men jag skulle vilja kommentera ett annat uttalande av ditt: ”bör”. Vad du ska eller inte bör använda beror på vad du behöver dina data för. Även om xz och LZMA2 har funnits i flera år, människor överväger fortfarande att komprimera med gz som fallback av kompatibilitetsskäl. Saker som Trac eller cgit erbjuder .tar.gz, .7z och .tar.xz. Med alternativet .tar.gz, eftersom det har funnits ”för alltid” och det ” ett bra tillbakagångsmått på alla typer av enheter, oavsett hur minimal eller gammal det är.

Precis som ett mot exempel, lzop är ett snabbt och resurssparande kompressor, som ofta används på rymdfarkoster, men annars är den inte särskilt effektiv. Jag kunde dock inte säga att det inte används i stor utsträckning. Det används ofta i system där det är viktigare att snabbt komprimera något med lite kraft och datorutrymme.

Så vad du bör eller inte bör använda är det som är mest vettigt för dig och människorna som interagerar med dina data.


En sak som dykt upp i mitt sinne nyligen: man sidor komprimeras rutinmässigt med gzip. Om du till exempel tittar på /usr/share/man/man1/ ser du många filer som liknar mv.1.gz, om inte alla är komprimerade Nu skulle det förmodligen vara vettigt att byta till .xz -filer på grund av bättre komprimering, men utrymmesvinsterna är minimala, jämfört med de negativa effekterna av dike ”>

för .xz. Anledningen till detta är den nästan universella kompatibiliteten. Till och med att öppna .gz komprimerade filer direkt i Vim fungerar bra och fungerar som transparent komprimering.

Svar

Formatet .xz ger ett par avancerade funktioner. Samtidigt har det hållits tillräckligt enkelt för att kunna användas i många inbäddade system. Här är en sammanfattning av funktionerna:

  • Slumpmässig åtkomstläsning: Data kan delas i oberoende komprimerade block. Varje -filen innehåller ett index över blocken, vilket möjliggör begränsad slumpmässig åtkomstläsning när blockstorleken är tillräckligt liten.
  • Integritetskontroller: Integriteten hos alla rubriker är alltid skyddad med CRC32 . Integriteten för de faktiska uppgifterna kan verifieras med CRC32, CRC64, SHA-256 …
  • Sammankoppling: Precis som med .gz och .bz2 filer är det möjligt att sammanfoga .xz filer som de är. Dekompressorn kan dekomprimera en sammanfogad fil som om det var en vanlig .xz -fil.
  • Padding: Binära nollor kan läggas till .xz filer för att lägga till dem för att fylla t.ex. ett block på ett reservband. Utfyllningen måste vara flera av fyra byte, eftersom storleken på alla giltiga .xz -filer är en multipel av fyra byte.

Lämna ett svar

Din e-postadress kommer inte publiceras. Obligatoriska fält är märkta *