Filarkivering
En filarkiverare är ett datorprogram som kombinerar ett antal filer till en arkivfil , eller en serie arkivfiler, för enklare transport eller lagring. Filarkiverare kan använda förlustfri datakomprimering i sina arkivformat för att minska storleken på arkivet.
Grundläggande arkiverare tar bara en lista över filer och sammanfogar deras innehåll sekventiellt till arkiv. Arkivfilerna måste lagra metadata, åtminstone namn och längder på originalfilerna, om korrekt rekonstruktion är möjlig. Mer avancerade arkiverare lagrar ytterligare metadata, såsom de ursprungliga tidsstämplarna , filattribut eller åtkomstkontrollistor.
Processen att skapa en arkivfil kallas arkivering eller packning . Att rekonstruera originalfilerna från arkivet kallas för att avarkivera , packa upp eller extrahera .
Historia
En tidig arkiverare var Multics- kommandoarkivet , härstammande från CTSS -kommandot med samma namn, som var en grundläggande arkiverare och inte utförde någon komprimering . Multics hade också ett "tape_archiver"-kommando, förkortat ta , vilket kanske var föregångaren till Unix-kommandot tar .
Unix-arkiverare
Unix - verktygen ar , tar och cpio fungerar som arkiverare men inte kompressorer. Användare av Unix-verktygen använder ytterligare komprimeringsverktyg, såsom gzip , bzip2 eller xz , för att komprimera arkivfilen efter packning eller ta bort komprimering innan arkivfilen packas upp. Filnamnstilläggen läggs till successivt vid varje steg i denna process . Till exempel, arkivering av en samling filer med tar och sedan komprimering av den resulterande arkivfilen med gzip resulterar i en fil med filändelsen .tar.gz .
Detta tillvägagångssätt har två mål:
- Det följer Unix-filosofin att varje program ska utföra en enda uppgift till perfektion, i motsats till att försöka åstadkomma allt med ett verktyg. Allt eftersom komprimeringstekniken fortskrider kan användare använda olika komprimeringsprogram utan att behöva ändra eller överge sin arkivering.
- Arkiven använder solid komprimering . När filerna kombineras kan komprimeraren utnyttja redundans över flera arkiverade filer och uppnå bättre komprimering än en kompressor som komprimerar varje fil individuellt.
Detta tillvägagångssätt har dock också nackdelar:
- Det är svårt att extrahera eller ändra en fil. Att extrahera en fil kräver dekomprimering av ett helt arkiv, vilket kan vara tid- och utrymmeskrävande. Att ändra en innebär att filen måste läggas tillbaka i arkivet och arkivet måste komprimeras igen. Denna operation kräver ytterligare tid och diskutrymme.
- Arkivet blir skadebenäget. Om området som innehåller delad data för flera filer skadas går alla dessa filer förlorade.
- Det är omöjligt att dra fördel av redundans mellan filer om inte komprimeringsfönstret är större än storleken på en enskild fil. Till exempel använder gzip DEFLATE , som vanligtvis fungerar med ett 32768-byte-fönster, medan bzip2 använder en Burrows–Wheeler-transform som är ungefär 27 gånger större. xz har som standard 8 MiB men stöder betydligt större fönster.
Windows arkiverare
Den inbyggda arkiveringen av Microsoft Windows samt arkiveringsprogram från tredje part, som WinRAR och 7-zip , använder ofta ett grafiskt användargränssnitt . De erbjuder också ett valfritt kommandoradsgränssnitt , medan Windows själv inte gör det. Windows-arkivering utför både arkivering och komprimering. Solid komprimering kan eller kanske inte erbjuds, beroende på produkten: Windows själv stöder inte det; WinRAR och 7-zip erbjuder det som ett alternativ som kan slås på eller av.
Se även
externa länkar
- Arkivformat hos Curlie