TAR arhīvs (.tar)
POSIX.1-1988 StandartsTape 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:
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 72ASCII ATTEIOLOJUMS: ustar
Standartizācija: POSIX.1-1988 (ustar) / POSIX.1-2001 (pax)
Tehniskās specifikācijas
| Konteinera arhitektūra | Sequence of 512-byte blocks: 512-byte file header followed by file data rounded up to 512 bytes, ending with two zero blocks |
| Saspiešana | Uncompressed archive container (designed to be piped into gzip, bzip2, xz, or zstd) |
| Baitu secība | Octal ASCII string fields; big-endian numeric extensions |
| Krāsu telpas | N/A (Archive Container) |
| Kanāli un struktūra | Unix file directory tree, symlinks, hardlinks, character/block devices, and FIFO pipes |
| Maks. izmēri | 8 GB limit in classic ustar; practically unlimited in modern PAX format |
| Caurspīdīgums | Full preservation of POSIX file permissions, owner UID/GID, access times, and extended attributes |
| Straumēšana un progresīvā ielāde | Sequential stream-oriented design: can be written directly to physical magnetic tape drives |
Tehniskā salīdzinājuma matrica: TAR pret konkurentiem
| Tehniskais atribūts | TAR (Pašreizējais) | ZIP | 7Z | CPIO |
|---|---|---|---|---|
| Vietējā kompresija | Nav (tīrs iepakošanas konteiners) | Iebūvēta Deflate kompresija | Iebūvēta LZMA/LZMA2 kompresija | Nav (tīrs iepakošanas konteiners) |
| Unix atļauju saglabāšana | 100% POSIX atribūti, simboliskās saites, UID/GID | Ierobežots Unix atļauju atbalsts | Saglabā pamata atļaujas | 100% POSIX atribūti |
| Straumēšanas atpakošana | Pilna straumējamā atpakošana no caurulēm | Nepieciešams nolasīt centrālo direktoriju pie EOF | Nepieciešams nolasīt beigu galveni | Pilna straumējamā atpakošana |
| Nejaušā piekļuve failiem | Lē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
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ā.
Saistītie TAR konvertēšanas pāri
ZIP arhīva konvertēšana uz TAR arhīvu pārveido saspiestu failu konteineru nesaspiestā lenšu arhīva formātā, kas ir piemērots Unix videi.
TAR arhīva konvertēšana uz ZIP arhīvu pārveido nesaspiestu Unix konteineru universāli pieejamā, saspiestā failu formātā.
TAR arhīva konvertēšana GZIP arhīvā ietver nesaspiestu failu kolekciju vienā saspiestā straumē, izmantojot bezzaudējumu DEFLATE algoritmu, lai ievērojami samazinātu faila izmēru.
GZIP saspiestā faila konvertēšana TAR arhīvā noņem saspiešanas slāni, lai atklātu neapstrādāto, nesaspiesto failu un mapju kolekciju.