TAR arhīvs (.tar)

POSIX.1-1988 Standarts

Tape Archive (TAR) ir universāls Unix un Linux failu iepakošanas formāts, kas apvieno vairākus failus, direktorijus un failu sistēmas metadatus vienā nekompresētā plūsmā, kura sākotnēji tika izstrādāta magnētisko lenšu dublēšanai un programmatūras izplatīšanai.

Konvertēt ZIP uz TAR

Bezmaksas ZIP uz TAR konvertētājs pārlūkprogrammā. Konvertējiet failus uzreiz savā ierīcē.

Pārbaudīt un metadati

Operētājsistēmas un failu analizatori identificē TAR failus, pārbaudot sākotnējo bināro baitu secību:

Atlasiet vai velciet failus šeit

100% privāta konvertēšana pārlūkprogrammā - faili nekad neatstāj jūsu ierīci

vai ielīmējiet Ctrl+V
Privātuma garantija bez datu pārraides tīklā: 0 baitu augšupielādēti ārējos serveros. Visa apstrāde notika lokāli jūsu pārlūkprogrammas smilškastē.

Baitu līmeņa galvenes paraksts (maģiskie baiti)

Operētājsistēmas un failu analizatori identificē TAR failus, pārbaudot sākotnējo bināro baitu secību:

HEKSADECIMĀLAIS PARAKSTS (NOBĪDE 257):

75 73 74 61 72

ASCII ATTEIOLOJUMS: ustar

Standartizācija: POSIX.1-1988 (ustar) / POSIX.1-2001 (pax)

Tehniskās specifikācijas

Konteinera arhitektūraSequence of 512-byte blocks: 512-byte file header followed by file data rounded up to 512 bytes, ending with two zero blocks
SaspiešanaUncompressed archive container (designed to be piped into gzip, bzip2, xz, or zstd)
Baitu secībaOctal ASCII string fields; big-endian numeric extensions
Krāsu telpasN/A (Archive Container)
Kanāli un struktūraUnix file directory tree, symlinks, hardlinks, character/block devices, and FIFO pipes
Maks. izmēri8 GB limit in classic ustar; practically unlimited in modern PAX format
CaurspīdīgumsFull preservation of POSIX file permissions, owner UID/GID, access times, and extended attributes
Straumēšana un progresīvā ielādeSequential stream-oriented design: can be written directly to physical magnetic tape drives

Tehniskā salīdzinājuma matrica: TAR pret konkurentiem

Tehniskais atribūtsTAR (Pašreizējais)ZIP7ZCPIO
Vietējā kompresijaNav (tīrs iepakošanas konteiners)Iebūvēta Deflate kompresijaIebūvēta LZMA/LZMA2 kompresijaNav (tīrs iepakošanas konteiners)
Unix atļauju saglabāšana100% POSIX atribūti, simboliskās saites, UID/GIDIerobežots Unix atļauju atbalstsSaglabā pamata atļaujas100% POSIX atribūti
Straumēšanas atpakošanaPilna straumējamā atpakošana no caurulēmNepieciešams nolasīt centrālo direktoriju pie EOFNepieciešams nolasīt beigu galveniPilna straumējamā atpakošana
Nejaušā piekļuve failiemLēna (lineāra secīga skenēšana)Tūlītēja (centrālā direktorija uzmeklēšana)Mērena (indeksa uzmeklēšana)Lēna (lineāra secīga skenēšana)

Biežākie bojājumu veidi un heksadecimālās atkopšanas ceļvedis

Atpakošanas kļūda: 'tar: Skipping to next header' vai 'A lone zero block at X'.

Pamatcēlonis: Bojāts 512 baitu bloku izlīdzinājums vai priekšlaicīga plūsmas pārtraukšana.

Atkopšana: Atpakot ar 'tar -i', lai ignorētu bojātos blokus, vai salabot ar File2File Tar rīku.

Drošības analīze un parsētāja uzbrukuma vektori

TAR atpakotājiem ir jādezinficē failu ceļi, lai novērstu patvaļīgu failu pārrakstīšanu, izmantojot direktoriju pārlūkošanas uzbrukumus.

Zināmie uzbrukuma vektori

  • "Slip" direktoriju pārlūkošana (piem., '../etc/passwd'), kas atpakošanas laikā pārraksta kritiskos sistēmas failus.
  • Simbolisko saišu sacensību apstākļi, kas izveido simboliskas saites uz sistēmas direktorijiem, kam seko failu rakstīšana.
  • Pakalpojuma atteice caur cikliskām cieto saišu cilpām.

Aizsardzības labākā prakse:

Vēsturiskā izcelsme un pavērsieni

2001IEEE POSIX.1-2001 ievieš PAX (Portable Archive Interchange) standartu, pārkāpjot mantotos 8 GB izmēra ierobežojumus.
1988IEEE POSIX standartizē "ustar" (Unix Standard Tar) galvenes formātu.
1979Bell Labs to ieviesa Version 7 Unix (V7), lai ierakstītu failu kokus magnētisko lenšu diskdziņos.

Galvenās priekšrocības un plusi

  • Precīzi saglabā pilnīgu Unix failu sistēmas identitāti: POSIX atļaujas, simboliskās saites, cietās saites un īpašumtiesības.
  • Straumēšanai piemērots lentes orientēts dizains: var tikt atpakots tieši no tīkla caurules, neveicot meklēšanu faila beigās.
  • Universāls standarts visos Linux serveros, konteineru attēlos (Docker/OCI) un Unix programmatūras izplatījumos.

Tehniskie ierobežojumi un mīnusi

  • Nav vietējās kompresijas: nekompresēts .tar fails ir aptuveni tikpat liels kā neapstrādātie faili kopā.
  • Nejaušā piekļuve ir lēna: viena faila atpakošana no masīva tarball vidus prasa skenēšanu no paša sākuma.
  • Vecākās ustar galvenēs tika apgriezti failu vārdi, kas garāki par 100 rakstzīmēm (atrisināts mūsdienu PAX/GNU tar).

Interesanti tehniski fakti

  • Maģiskie baiti "ustar" atrodas baita nobīdē 257 katrā 512 baitu galvenes blokā.
  • TAR sākotnēji tika uzrakstīts, lai fiziski kontrolētu 9 celiņu magnētisko spoļu lenšu diskdziņus.
  • Docker un OCI konteineru attēli burtiski ir standarta .tar arhīvu sakrauti komplekti, kas satur saknes failu sistēmas starpības.

Bieži uzdotie tehniskie jautājumi

Kāpēc mans .tar fails nav saspiests?

TAR ir tikai arhivators (tas apvieno failus vienā failā) un pats par sevi neveic saspiešanu. Lai to saspiestu, izmantojiet to kopā ar gzip, lai izveidotu .tar.gz failu.

Kāda ir atšķirība starp ustar un GNU tar?

Ustar ir 1988. gada POSIX standarts ar 100 rakstzīmju faila nosaukuma ierobežojumu, savukārt GNU tar ir paplašināts formāts, kas atbalsta neierobežotu ceļa garumu un tukšumziņu (sparse) failus.

Kā es varu atvērt .tar failu operētājsistēmā Windows?

Windows 10 un 11 atbalsta tar pēc noklusējuma caur komandrindu ('tar -xf file.tar'), vai arī varat to vizuāli atpako, izmantojot File2File.app tieši savā tīmekļa pārlūkprogrammā.