TAR-arkiv (.tar)
POSIX.1-1988 StandardTape Archive (TAR) är ett vanligt paketeringsformat för Unix och Linux som samlar filer, kataloger och utvalda filsystemsmetadata i en okomprimerad ström.
Konvertera ZIP till TAR
Gratis konverterare från ZIP till TAR i webbläsaren. Konvertera filer direkt på din enhet.
Granska och metadata
Operativsystem och filanalysverktyg identifierar TAR-filer genom att granska den inledande sekvensen av binära byte:
Signatur i filhuvudet på bytenivå (magiska byte)
Operativsystem och filanalysverktyg identifierar TAR-filer genom att granska den inledande sekvensen av binära byte:
HEX-SIGNATUR (OFFSET 257):
75 73 74 61 72ASCII-REPRESENTATION: ustar
Standardisering: POSIX.1-1988 (ustar) / POSIX.1-2001 (pax)
Tekniska specifikationer
| Containerarkitektur | Sekvens av 512-byteblock: ett filhuvud på 512 byte följt av fildata som avrundas uppåt till närmaste 512 byte, och avslutat med två nollblock |
| Komprimering | Okomprimerad arkivbehållare (avsedd att skickas vidare till gzip, bzip2, xz eller zstd) |
| Byteordning | Oktala ASCII-strängfält; numeriska tillägg i big-endian |
| Färgrymder | Ej tillämpligt (arkivbehållare) |
| Kanaler och struktur | Unix-filträd, symboliska länkar, hårda länkar, tecken- och blockenheter samt FIFO-rör |
| Maximala dimensioner | Gräns på 8 GB i klassisk ustar; i praktiken obegränsat i moderna PAX-format |
| Transparens | Lagrar utvalda metadata från filsystemet, till exempel behörigheter och ägar-ID:n; vilka attribut som bevaras beror på arkivformat och implementation |
| Strömning och progressiv visning | Sekventiell, strömorienterad utformning; kan skrivas direkt till fysiska magnetbandsenheter |
Teknisk jämförelsematris: TAR jämfört med konkurrenter
| Tekniskt attribut | TAR (Aktuell) | ZIP | 7Z | CPIO |
|---|---|---|---|---|
| Inbyggd komprimering | Ingen (ren paketeringsbehållare) | Inbyggd Deflate-komprimering | Inbyggd LZMA/LZMA2-komprimering | Ingen (ren paketeringsbehållare) |
| Bevarande av Unix-behörigheter | Utvalda POSIX-attribut, symboliska länkar, UID/GID | Begränsat stöd för Unix-behörigheter | Bevarar grundläggande behörigheter | Stöd för utvalda POSIX-attribut |
| Strömningsbar extrahering | Fullständig strömningsbar extrahering från rör | Kräver läsning av centralt register vid EOF | Kräver läsning av sluthuvud | Fullständig strömningsbar extrahering |
| Direktåtkomst till filer | Långsam (linjär sekventiell sökning) | Omedelbar (uppslagning i centralt register) | Måttlig (indexuppslagning) | Långsam (linjär sekventiell sökning) |
Vanliga skadeorsaker och hex-återställningsguide
Extraheringsfel: 'tar: Skipping to next header' eller 'A lone zero block at X'.
Grundorsak: Skadad 512-bytes blockjustering eller tidig avslutning av strömmen.
Återställning: Extrahera med 'tar -i' för att ignorera skadade block eller reparera med File2File.app Tar Tool.
Säkerhetsanalys och attackvektorer för tolkar
TAR-extraherare måste sanera filvägar för att förhindra godtyckliga filöverskrivningar via katalogtraverseringsattacker.
Kända attackvektorer
- Katalogtraversering via 'Slip' (t.ex. '../etc/passwd') som skriver över kritiska systemfiler under extrahering.
- Kapplöpningstillstånd där symboliska länkar till systemkataloger skapas innan filer skrivs dit.
- Tjänsteavbrott (DoS) genom cirkulära loopar med hårda länkar.
Rekommenderade skyddsåtgärder: Sanera arkivfilsökvägar strikt och avvisa alla poster som innehåller referenser till överordnade kataloger ('..').
Historiskt ursprung och milstolpar
Viktiga fördelar
- TAR kan lagra Unix-behörigheter, symboliska länkar och ägar-ID:n. Kontrollera om extraheraren återställer dessa fält, särskilt vid uppackning på Windows eller ett system med andra behörighetsregler.
- Bandorienterad utformning som stöder strömning: kan extraheras direkt från ett nätverksrör utan att söka till slutet av filen.
- Pakethanterare för Linux och verktyg för containrar distribuerar ofta filer i TAR-arkiv, vanligen komprimerade som .tar.gz eller .tar.zst.
Tekniska begränsningar
- Ingen inbyggd komprimering: en okomprimerad .tar-fil är ungefär lika stor som de råa filerna tillsammans.
- Slumpmässig åtkomst är långsam: att extrahera en enskild fil från mitten av ett stort tar-arkiv kräver att man läser igenom det från början.
- Äldre ustar-huvuden trunkerade filnamn som var längre än 100 tecken (detta åtgärdades i moderna PAX/GNU tar).
Intressant teknisk kuriosa
- De magiska byten 'ustar' finns vid byteposition 257 i varje 512-bytehuvudblock.
- TAR skrevs ursprungligen för att fysiskt styra 9-spåriga magnetbandsenheter med rulle till rulle.
- Docker- och OCI-behållaravbildningar är bokstavligen staplade uppsättningar av standardiserade .tar-arkiv som innehåller rotfilsystemsändringar.
Vanliga tekniska frågor
Varför är inte min .tar-fil komprimerad?
TAR är enbart ett arkiveringsverktyg (det samlar filer i en enda fil) och komprimerar inte självt. För att komprimera arkivet kan du kombinera det med gzip och skapa en .tar.gz-fil.
Vad är skillnaden mellan ustar och GNU tar?
Ustar är POSIX-standarden från 1988 med en gräns på 100 tecken för filnamn, medan GNU tar är ett utökat format som stöder obegränsade sökvägslängder och glesa filer.
Hur kan jag öppna en .tar-fil på Windows?
Windows 10 och 11 stöder tar inbyggt via kommandoraden ('tar -xf file.tar'), eller så kan du extrahera den visuellt med File2File.app direkt i din webbläsare.
Relaterade konverteringspar för TAR
Genom att konvertera ett ZIP-arkiv till ett TAR-arkiv förvandlas en komprimerad filbehållare till ett okomprimerat bandarkivformat anpassat för Unix-miljöer.
Genom att konvertera ett TAR-arkiv till ett ZIP-arkiv förvandlas en okomprimerad Unix-behållare till ett komprimerat filformat med brett stöd.
Att konvertera ett TAR-arkiv till ett GZIP-arkiv omsluter en okomprimerad filsamling i en enda komprimerad ström med hjälp av den förlustfria DEFLATE-algoritmen för att minska filstorleken avsevärt.
Extrahera TAR-data från ett GZIP-komprimerat TAR-arkiv, till exempel .tar.gz eller .tgz.