Mitä hyötyä Tar-tiedostomuodosta käytetään nykyään?

Sisällysluettelo:

Mitä hyötyä Tar-tiedostomuodosta käytetään nykyään?
Mitä hyötyä Tar-tiedostomuodosta käytetään nykyään?

Video: Mitä hyötyä Tar-tiedostomuodosta käytetään nykyään?

Video: Mitä hyötyä Tar-tiedostomuodosta käytetään nykyään?
Video: Muutoshanke koulussa - YouTube 2024, Huhtikuu
Anonim
 Tar arkistointimuoto on vuosien mittaan todellinen Methuselah, mutta se on edelleen raskaassa käytössä. Mikä tekee tar-muodon niin hyödyllisestä pitkän alun jälkeen?
Tar arkistointimuoto on vuosien mittaan todellinen Methuselah, mutta se on edelleen raskaassa käytössä. Mikä tekee tar-muodon niin hyödyllisestä pitkän alun jälkeen?

Tämän päivän kysymys- ja vastausistunto tulee meihin SuperUserin hyväksi - Stack Exchangein alaosasto, joka on yhteisöllinen Q & A-sivustojen ryhmittely.

Kysymys

SuperUser-lukija MarcusJ on utelias tar-formaatista ja miksi käytämme sitä vielä kaikkien näiden vuosien jälkeen:

I know that tar was made for tape archives back in the day, but today we have archive file formats that both aggregate files and perform compression within the same logical file format.

Questions:

  • Is there a performance penalty during the aggregation/compression/decompression stages for using tar encapsulated in gzip or bzip2, when compared to using a file format that does aggregation and compression in the same data structure? Assume the runtime of the compressor being compared is identical (e.g. gzip and Deflate are similar).
  • Are there features of the tar file format that other file formats, such as.7z and.zip do not have?
  • Since tar is such an old file format, and newer file formats exist today, why is tar (whether encapsulated in gzip, bzip2 or even the new xz) still so widely used today on GNU/Linux, Android, BSD, and other such UNIX operating systems, for file transfers, program source and binary downloads, and sometimes even as a package manager format?

Se on täysin kohtuullinen kysymys; niin paljon on muuttunut tietojenkäsittelymaailmassa viimeisten kolmenkymmenen vuoden aikana, mutta käytämme edelleen tar-muotoa. Mikä on tarina?

Vastaus

SuperUser-avustaja Allquixotic tarjoaa jonkinlaista tietoa tar-formaatin pitkäikäisyydestä ja toimivuudesta:

Part 1: Performance

Here is a comparison of two separate workflows and what they do.

You have a file on disk

blah.tar.gz

joka on esimerkiksi 1 gigatavua gzip-pakattua dataa, joka pakkaamattomana vaatii 2 gigatavua (joten pakkaussuhde on 50%).

Näin voit luoda tämän, jos haluat tehdä arkistoinnin ja pakkaamisen erikseen, olisi:

tar cf blah.tar files …

Tämä johtaisi siihen

blah.tar

joka on pelkkä aggregointi

files …

kompressoimattomassa muodossa.

Sitten tekisit

gzip blah.tar

Tämä lukisi sisällön

blah.tar

levyltä, pakkaa ne gzip-puristusalgoritmilla, kirjoita sisältö

blah.tar.gz

purkaa sitten tiedosto (poistetaan)

blah.tar

Pura nyt dekompressi!

Tapa 1

Sinulla on

blah.tar.gz

tavalla tai toisella.

Päätit käyttää:

gunzip blah.tar.gz

Tämä tulee

  • LUE 1 Gt: n pakattujen tietojen sisältö

    blah.tar.gz

  • PROCESS pakattuja tietoja

    gzip

    decompressor muistissa.

  • Kun muistipuskuri täyttää "data" -arvon, kirjoita pakkaamattomat tiedot tiedostoon

    blah.tar

    levylle ja toista, kunnes kaikki pakatut tiedot luetaan.

  • Poista yhteys (poistetaan) tiedosto

    blah.tar.gz

Nyt sinulla on

blah.tar

levylle, joka on pakkaamaton mutta sisältää yhden tai useamman sen sisältämät tiedostot, joiden tietojen rakenne on liian alhainen. Tiedostokoko on luultavastipari tavua suurempi kuin kaikkien tiedostotietojen summa.

Sinä juokset:

tar xvf blah.tar

Tämä tulee

  • LUE 2 Gt: n pakkaamatonta datasisältöä

    blah.tar

    ja

    tar

    tiedostomuodon tietorakenteet, mukaan lukien tiedot tiedostojen käyttöoikeuksista, tiedostonimistä, hakemistoista jne.

  • Kirjoita levylle 2 Gt: n data ja metatiedot. Tämä tarkoittaa: tietojen rakenteen / metatietojen kääntämistä uusien tiedostojen ja hakemistojen luomiseen levylle sopivaksi tai uudelleenkirjoittamalla olemassa olevia tiedostoja ja hakemistoja uusilla tietosisällöillä.

Kokonaistiedot me LUKEA levystä tässä prosessissa oli 1 Gt (gunzip) + 2 Gt (tar) = 3 Gt.

Kokonaistiedot me KIRJOITTI levylle tässä prosessissa oli 2 gigatavua (gunzipille) + 2 gigatavua (tar) + muu tavu metatiedolle = noin 4 gigatavua.

Way 2

Sinulla on

blah.tar.gz

tavalla tai toisella.

Päätit käyttää:

tar xvzf blah.tar.gz

Tämä tulee

  • LUE 1 Gt: n pakattujen tietojen sisältö

    blah.tar.gz

    lohko kerrallaan, muistiin.

  • PROCESS pakattuja tietoja

    gzip

    decompressor muistissa.

  • Kun muistipuskuri täyttyy, se tulee putki että tiedot, muistiin, läpi

    tar

    tiedostomuotoesittelijä, joka lukee tietoja metatiedoista jne. ja kompressoimattomista tiedostatiedoista.

  • Kun muistipuskuri täyttyy

    tar

    tiedoston jäsentimen, se kirjoittaa kompressoimatonta dataa levylle luomalla tiedostoja ja hakemistoja ja täyttämällä ne pakkaamattomilla sisällöillä.

Kokonaistiedot me LUKEA levyltä tässä prosessissa oli 1 Gt pakattua dataa, ajanjaksoa.

Kokonaistiedot me KIRJOITTI levylle tässä prosessissa oli 2 Gt pakkaamatonta dataa + muutamia tavuja metatietoihin = noin 2 Gt.

Jos huomaat, I / O-levyn määrä Way 2 onidenttinen levyn I / O: lle, jota sanotaan, esimerkiksi

Zip

tai

7-Zip

ohjelmat, säätää mahdollisia kompressiosuhteita.

Ja jos pakkaussuhde on sinun huolesi, käytä

Xz

kompressori kapseloida

tar

ja sinulla on LZMA2'n TAR-arkisto, joka on yhtä tehokas kuin edistynein algoritmi

7-Zip

:-)

Osa 2: Ominaisuudet

tar

kaupat UNIX luvat sen tiedostometadatalle, ja on hyvin tunnettu ja testattu onnistuneesti pakkaamaan hakemiston kaikenlaisia erilaisia lupia, symbolisia linkkejä, jne on enemmän kuin muutamia tapauksia, joissa yksi ehkä loraus joukko tiedostoja yhden tiedoston tai virran, mutta ei välttämättä pakkaa sitä (vaikka pakkaus on hyödyllinen ja usein käytetty).

Osa 3: Yhteensopivuus

Monia työkaluja jaetaan lähde- tai binäärimuodossa.tar.gz tai.tar.bz2 koska se on”pienin yhteinen nimittäjä” tiedostomuoto: aivan kuten useimmat Windows-käyttäjät voivat käyttää Zip tai.rar purkuohjelmia, useimmat Linux -järjestelmissä jopa kaikkein yksinkertaisimpia, pääsevät ainakin tar ja gunzip, ei väliä kuinka vanha tai pared alas. Jopa Android-laitteilla on pääsy näihin työkaluihin.

Uusi hankekokonaisuuden yleisön käytössä moderni jakaumia voi hyvin levittää enemmän modernin muodon, kuten.tar.xz (käyttäen XZ (LZMA) pakkausmuoto, joka pakkaa paremmin kuin gzip tai bzip2), tai.7z, joka on samanlainen kuin Zip- tai Rar-tiedostomuotoja, koska se sekä pakkaa että määrittää asettelun useiden tiedostojen kapseloimiseksi yhteen tiedostoon.

Et näe.7z: n käyttämiä useammin samasta syystä, että musiikkia ei myydä online-lataamissa myymälöissä uusissa muodoissa, kuten Opusissa tai videossa WebM: ssä. Yhteensopivuus vanhojen tai hyvin perustuvien järjestelmien kanssa.

Onko jokin asia lisättävä selitykseen? Kuulkaa kommentit.Haluatko lukea lisää vastauksia muilta tech-tajuilta Stack Exchange-käyttäjiltä? Katso koko keskusteluketju täältä.

Suositeltava: