Kuidas samm-sammult koodi tarballi paketti luua

Viimane uuendus: 04/12/2025
Autor: Isaac
  • Tarball grupeerib ja tihendab lähtekoodi, säilitades samal ajal struktuuri ja õigused, muutes selle GNU/Linuxis projektide levitamise standardvorminguks.
  • osa käsud Tar-võti (c, x, t, v, f, z, j) võimaldab teil tõhusalt ja paindlikult luua, loetleda ja ekstraktida .tar, .tar.gz ja .tar.bz2 arhiive.
  • Enamik programme kompileeritakse tar-failidest, kasutades selliseid süsteeme nagu Autotools või CMake, järgides konfigureerimise, kompileerimise ja installimise töövoogu.
  • Hästi nimetatud ja struktureeritud tarball-failid on aluseks .deb, .rpm pakettide ja universaalsete vormingute (nt Snap või Flatpak) genereerimisele.

Samm-sammult juhend koodi tarballi jaoks

Kui töötad Linuxiga, siis varem või hiljem puutud kokku kooditarballiga : tüüpilise .tar, .tar.gz või .tar.bz2 failiga, mis sisaldab täielikku projekti, mis on valmis kompileerimiseks või pakkimiseks. Esmapilgul võib see tunduda veidi hirmutav, aga kui sa mõistad, kuidas seda luua ja kasutada, saab sellest sinu igapäevatöös oluline tööriist.

Selles juhendis õpid samm-sammult, kuidas luua koodi tarballi , kuidas seda tar-i abil tihendada ja lahti pakkida, kuidas projekti lähtekoodina levitamiseks ette valmistada ja kuidas seda tarballi veelgi edasi arendada, pakkides seda .deb, .rpm või isegi universaalsetes vormingutes nagu Snap, Flatpak või AppImage. Kõik on üksikasjalikult ja lihtsalt lahti seletatud, et saaksid seda enesekindlalt praktikas rakendada.

Mis täpselt on tarball ja miks seda nii palju kasutatakse?

Tarball on lihtsalt tar-tööriistaga loodud arhiiv, mis koondab palju faile ja katalooge ühte. Algselt tuli "tar" tööriistast Tape Archive , kuna seda kasutati andmete lintidele kopeerimiseks, kuid tänapäeval kasutatakse seda peamiselt lähtekoodi pakendamiseks ja varukoopiate loomiseks.

Kui näete laiendusi nagu .tar , .tar.gz , .tgz või .tar.bz2 , näete tegelikult tar-arhiivi pluss tihenduskihti . Tüüpiline protsess on järgmine: esmalt pakitakse kõik failid tar-faili ja seejärel tihendatakse see tar-arhiiv gzip-i (.gz), bzip2-ga (.bz2) või sarnaste programmidega, et suurust vähendada.

GNU/Linuxi ökosüsteemis kasutatakse tarballe programmide algse lähtekoodi levitamiseks , suurte kataloogipuude liigutamiseks serverite vahel, veebisaitide või andmete varundamiseks ja projektide jagamiseks jaotusest sõltumatult (need ei sõltu .deb, .rpm jne failidest). Seetõttu on need nii universaalsed.

Oluline on see, et tar austab õigusi, omanikke ja kataloogistruktuuri , mis on oluline koodi või konfiguratsioonide pakkimisel, mis tuleb teise masinasse täpselt sellisena installida.

Tar-i põhikäsklused: loomine, loetlemine ja ekstraheerimine

Käsk tar on Linuxis üks enimkasutatavaid ja hoolimata paljudest valikutest piisab enamiku igapäevaste toimingute sooritamiseks vaid mõne meelespidamisest. Põhisüntaks järgib alati sama mustrit:

tar-fail.tar-teed…

Koodifailidega töötamise kõige levinumate valikute hulka kuuluvad c, x, t, v, f ja zyj . Iga kombinatsioon võimaldab teil ilma suurema vaevata luua, sirvida või ekstraheerida erinevat tüüpi .tar-, .tar.gz- või .tar.bz2-faile.

Loo lihtne .tar-fail

Pakkimata koodi pakkimiseks, näiteks kataloogi ~/projects/myprog-1.0 , saate käivitada järgmise käsu:

tar -cvf miprog-1.0.tar ~/projects/miprog-1.0

Selles tar-käsus kasutatavad valikud on väga tüüpilised: c uue arhiivi loomiseks , v lisatava kuvamiseks (detailne režiim) ja f väljundfaili nime määramiseks (miprog-1.0.tar). Tulemuseks on pakkimata tar-fail, mida saab seejärel levitada või varukoopiana salvestada.

Loo tihendatud .tar.gz või .tgz tarball

Praktikas on peaaegu alati soovitav, et koodi tarball võtaks vähem ruumi. Selleks kasutatakse gzip-i koos tar-i valikuga -z, nii et mõlemad protsessid (tar + tihendamine) tehakse ühe käsuga:

tar -cvzf miprog-1.0.tar.gz ~/proyectos/miprog-1.0

Siin näitab valik 'z' , et tihendajana tuleks kasutada gzip-i . Genereeritud failile võib anda nimeks .tar.gz või .tgz, kuna need on praktiliselt samaväärsed. Sisu jääb samaks, kuid on tihendatud, mistõttu sobib see ideaalselt allalaadimissaidile üleslaadimiseks , e-kirjale manustamiseks või repositooriumis "väljaandena" avaldamiseks.

Loo tihendatud tarball .tar.bz2

Kui vajate agressiivsemat tihendust (veidi väiksemad failid, kuid see võtab kauem aega tihendamiseks ja lahtipakkimiseks), saate kasutada bzip2-d koos valikuga -j :

tar -cvjf miprog-1.0.tar.bz2 ~/proyectos/miprog-1.0

Lipp j annab tar-ile käsu kasutada bzip2 . On tavaline leida nimevariante nagu .tar.tbz või .tar.tb2, kuid idee on identne: bzip2-ga pakitud ja levitamiseks valmis tar.

Loetle tarballi sisu

Enne millegi väljavõtmist või puudutamist võiksite vaadata, mis tarballi sisu on . Selleks ongi 't' valik (sisukorra jaoks):

tar -tvf miprog-1.0.tar

See käsk annab sulle detailse loendi failiteede, õiguste ja ajatemplitega . Sama muster kehtib ka .tar.gz ja .tar.bz2 kohta, kuna tar tuvastab tihendamise zoj valikute põhjal:

tar -tvf miprog-1.0.tar.gz
tar -tvf miprog-1.0.tar.bz2

Failide lahtipakkimine tarballist

Sisu lahtipakkimiseks ja praegusesse kataloogi ekstraktimiseks peate ainult c muutma x-ks, jättes ülejäänu samaks:

tar -xvf miprog-1.0.tar

Kui soovite määrata kindla kataloogi, kuhu failid salvestada, lisage valik -C , millele järgneb sihtkoha tee. Nii saate oma lähtekoodi või varukoopiaid korras hoida.

  Windows 11 taastamine, kui see pärast olulist värskendust ei käivitu

tar -xvf miprog-1.0.tar -C /home/kasutaja/src/

Sama kehtib gzip või bzip2 abil pakitud tarball-failide kohta, lisades lihtsalt vastava tihendusvaliku, näiteks tar -xvzf file.tar.gz või tar -xvjf file.tar.bz2.

Konkreetsete failide ekstraheerimine ja metamärkide kasutamine

Üks tar-i eeliseid on see, et saate lahti pakkida ainult mõned failid, selle asemel et kogu arhiivi lahti pakkida. Näiteks kui failis sampleArchive.tar on skript nimega example.sh, mida soovite taastada:

tar -xvf näidisArchive.tar näide.sh

Sama lähenemisviis toimib ka tihendatud tarballide puhul, lisades vajadusel `zoj` . Samuti saate kasutada valikut `--wildcards` , et ekstraheerida ainult mustrile vastavad failid, mis on väga kasulik näiteks ainult .jpg-piltide ekstraheerimiseks.

tar -xvf sampleArchive.tar –metamärgid '*.jpg'

.tar.gz või .tar.bz2 puhul oleks käsk sarnane, muutudes väärtuseks -zxvf või -jxvf, et arvestada algfailis kasutatud tihendusmeetodiga.

Loo lähtekoodi tarball nullist

Lisaks üksikute kaustade tihendamisele on Unixi maailmas tarballide klassikaline kasutusala programmi lähtekoodi levitamine . Idee on väga lihtne: autor valmistab ette projekti sisaldava puhta kataloogi, pakib selle tar.gz- või tar.bz2-failina ja avaldab selle. Kasutajad laadivad tarballi alla, pakivad selle lahti ja kompileerivad lokaalselt.

Paljudel juhtudel on sellel koodipuul nimi stiilis program-versioon , näiteks hello-sh-1.0, nii et saadud tarballi nimi on hello-sh-1.0.tar.gz ja lahtipakkimisel genereeritakse täpselt see kataloog koos kõige vajalikuga.

Tüüpiline näide praktikast hõlmab miniprojekti loomist lihtsa skriptiga, sellele täitmisõiguste andmist ja seejärel selle pakkimist. Näiteks:

$ mkdir -p hello-sh/hello-sh-1.0; cd hello-sh/hello-sh-1.0
$ kass > tere <
# / Bin / sh
# (C) 2011 Foo Bar, GPL2+
.echo "Tere!"
EOF
$ chmod 755 tere
$ CD ..
$ tar -cvzf hello-sh-1.0.tar.gz hello-sh-1.0

Selle protseduuriga oled genereerinud lihtsa tarballi koos lähtekoodiga , mille saad seejärel lahti pakkida suvalises Unixi-laadses distributsioonis ja skripti ilma pikema jututa käivitada.

Laadige alla, pakkige lahti ja valmistage ette lähtekood

Vaba tarkvara autoritel on nüüdseks tavaks avaldada oma kood tar.gz või tar.bz2 failina oma veebisaidil või platvormidel nagu GitHub . Need failid sisaldavad lähtekoodi puud, dokumentatsiooni (README, INSTALL jne) ja sageli ka Makefile'ide ja kompileerimisskriptide genereerimiseks vajalikke faile.

Kui projekt ei tule tar-failina, vaid versioonikontrollisüsteemist (Git, Subversion, CVS…) , siis tuleb repositoorium kloonida käsuga `git clone`, `svn co` või `cvs co` ja seejärel see kataloog ise käsuga `tar` pakkida, eelistatavalt valikuga `--exclude-vcs` , et vältida versioonikontrollisüsteemi metaandmete kaasamist.

tar -cvzf project-1.0.tar.gz –välja arvatud-vcs project-1.0

Mõnikord on lähtefail pakitud teistes vormingutes, näiteks .zip või .Z . Sellisel juhul pakitakse see lahti sobivate tööriistadega ja kui soovite järgida GNU/Linuxi klassikalist levitamisstandardit, pakitakse see uuesti tarball-failina (tar.gz või tar.bz2), säilitades programmi versioonistruktuuri.

Paigalda kompileerimisvahendid ja loe dokumentatsiooni

Enne tarballist millegi kompileerimist on soovitatav veenduda, et teie süsteemil on olemas põhilised arendustööriistad . Debiani, Ubuntu ja nende derivaatide puhul on see tavaliselt sama lihtne kui build-essential metapaketi installimine:

sudo apt install build-essential

Teistel distributsioonidel on küll erinevad nimed, aga idee on sama: Fedora/Red Hati puhul saab kasutada käsku ` sudo dnf groupinstall "Development Tools"` ja Arch Linuxi puhul `sudo pacman -S base-devel` . Oluline on, et sul oleks kompilaator (gcc, g++), make ja standardsed päised.

Kui oled tarballi lahti pakkinud, tuleb esimese asjana navigeerida projektikataloogi ja lugeda hoolikalt läbi failid README ja INSTALL , kuna need selgitavad tavaliselt kompileerimismeetodit, sõltuvusi ja muid üksikasju. Selleks võid kasutada käske less, cat või oma eelistatud tekstiredaktorit.

Lähtekoodi kompileerimine tarballist: klassikaline meetod

Enamik lihtsaid tarballidena levitatavaid projekte sisaldab Makefile'i (saate õppida, kuidas Makefile'e luua ja hallata ) või Autotoolsil põhinevat ehitussüsteemi. Sellistel juhtudel koosneb tüüpiline töövoog kolmest etapist: seadistamine, kompileerimine ja installimine, mõningate variatsioonidega olenevalt projektist.

Paljudel juhtudel tuleb pärast tarballi lahtipakkimist lihtsalt käivitada koodi juurkataloogis midagi sellist nagu ` ./configure && make && sudo make install` . Siiski on allpool üsna palju huvitavaid üksikasju, mida tasub teada, et te ei eksiks ootamatult.

Autotools: configure, Makefile ja company

Paljud vabavaraprogrammid kasutavad GNU Autotoolsi (Autoconf, Automake, Libtool, gettext jne), et genereerida erinevatele platvormidele kaasaskantavaid Makefile'e. Kui näete lähtekoodipuus selliseid faile nagu configure.ac, Makefile.am või Makefile.in, on peaaegu kindel, et projekt põhineb sellel süsteemil.

Tavaliselt käivitab autor oma keskkonnas käsu `autoreconf -i -f`, et genereerida nendest lähtekoodifailidest `configure` skript ja vastavad `Makefile.in` failid. Seejärel käivitaksite oma arvutis käsu `./configure`, mis looks teie süsteemile kohandatud lõplikud Makefile'id (tuvastades teegid, teed, kompilaatori jne).

  Kuidas Microsoft Teamsis sõnumite eelvaadet samm-sammult keelata

Lihtsustatud töövoog näeks välja umbes selline: configure ja Makefile.in luuakse failidest configure.ac ja Makefile.am ning seejärel genereeritakse ./configure käivitades Makefile ja config.h. Lõpuks kompileerib lihtne make binaarfaili. Kui teil on vaja installikatalooge muuta, saate configure skriptile anda valikud, näiteks ./configure --prefix=/usr, et muuta vaikimisi installiprefiksit.

CMake'iga kompileerimine kui moodne alternatiiv

Teine tänapäeval laialdaselt kasutatav ehitussüsteem on CMake . Selle tunned ära CMakeLists.txt faili olemasolu järgi projekti juurkataloogis. Tarballist kompileerimise muster hõlmab tavaliselt eraldi ehituskataloogi loomist, seal konfiguratsiooni genereerimist ja selle sees kompileerimist.

mkdir ehitada
cd ehitada
cmmake..
tegema
sudo installi

See lähenemisviis hoiab lähtekoodipuu puhtamana ja võimaldab genereerida projekte erinevatele platvormidele või IDE-dele, kasutades samu CMakeLists.txt faile. Loogika jääb aga samaks mis Autotoolsi puhul: konfigureeri, kompileeri ja installi.

Sõltuvusvigade lahendamine konfigureerimisel

On üsna tavaline, et käsu `./configure` esimene käivitamine ebaõnnestub, kuna puudub teek, päis või arendussõltuvus. Skript kuvab tavaliselt selge teate, näiteks "libejemplo't ei leitud" või "päist xyz.h ei leitud".

Paljudes distributsioonides on teegid pakendatud kolme varianti: binaar-, teek- ja arendusteek . Näitemustrile järgnevalt võivad sul olla paketid nimega example, libexample ja libexample-dev. Tarballist kompileerimiseks on tavaliselt vaja varianti -dev (see sisaldab linkimiseks vajalikke päiseid ja faile), seega kui sul tekib libexample'iga tõrge, on praktiline lahendus tavaliselt libexample-dev installimine ja uuesti proovimine.

On võimalik, et pärast `-dev` installimist käivitad uuesti `configure` ja see kaebab teistsuguse teegi üle. See on okei: see on katse-eksituse meetod, kuni kõik sõltuvused on täidetud . Kui see on tehtud, lõpeb `configure` edukalt ja saad kompileerimisega jätkata.

Kompileeri make'iga ja installi make install'iga

Kui konfigureerimisetapp on edukalt läbitud, saate projekti kompileerimiseks käivitada käsu `make` . Sõltuvalt programmi suurusest ja teie arvuti arvutusvõimsusest võib see protsess võtta aega mõnest sekundist kuni mitme minutini. Terminalis kuvatakse kompileerimis- ja linkimiskäskude täitmist .

Kui kõik läheb õigesti ja kompileerimisvigu ei ilmne, on ainus järelejäänud samm tulemuse süsteemi installimine käsuga `sudo make install` . Kokkuleppeliselt installitakse paljud projektid kausta `/usr/local` (binaarfailid kausta `/usr/local/bin`, teegid kausta `/usr/local/lib`, konfiguratsioonid kausta `/usr/local/etc…`), et neid ei segataks distributsiooni enda pakettidega.

Mõned projektid rakendavad ka eesmärki `make uninstall` , mis võimaldab installi tagasi võtta ja `make install` abil kopeeritud failid kustutada. Kõik projektid seda ei sisalda, aga kui see on dokumentatsioonis loetletud, on see suhteliselt mugav viis tarballis kompileeritud failide desinstallimiseks.

Millal ja kuidas Debianis pakkimiseks tarballi luua

Debiani maailmas ja selle derivaatides nimetatakse algset koodi tarballi tavaliselt versiooni_nimi.orig.tar.gz . Idee seisneb selles, et selgelt eraldada "ülesvoolu" lähtekood Debiani-spetsiifilistest muudatustest (paigad, juhtfailid, installijärgsed skriptid jne), mis lisatakse lähtekoodipaketi Debiani kataloogi.

Kui algne arendaja pani oma tarballile nimeks näiteks gentoo-0.9.12.tar.gz, siis Debiani hooldajana saate selle ümber nimetada nimeks gentoo_0.9.12.orig.tar.gz ja sealt edasi töötada. Seejärel lisate sellele lähtekoodile Debiani alamkataloogi, mis sisaldab kõiki .deb pakettide loomiseks vajalikke faile.

Tööriist dh_make lihtsustab seda ülesannet oluliselt: alustades gentoo-0.9.12.tar.gz-st, pakib see lähtekoodi lahti, genereerib sobiva .orig tar-faili ja loob debian/-kaustas mallid, mida saate seejärel kohandada. Pärast selle käivitamist näete, et teie töökataloog sisaldab nii ümbernimetatud originaali kui ka pakkimiseks valmis lähtekoodipuud.

Nimeta tarballidel ja pakettidel pakett ja selle versioon õigesti

Lähtekoodi tarballina levitamisel on oluline, et failinimi ja sisemine kataloog järgiksid ühtset konventsiooni . Näiteks Debiani ökosüsteemis on soovitatav, et paketi nimi kasutaks ainult väiketähti, numbreid, pluss- ja miinusmärke ning punkte, mõistliku pikkusega ja alati algaks tähtnumbrilise märgiga.

Versiooninumber peaks omakorda sisaldama ainult tähtnumbrilisi märke, plussmärke (+), tildeid (~) ja punkte ( .), alustades alati numbriga. See lihtsustab tööriistadel nagu dpkg versioonide õiget võrdlemist. Kui programmi autor kasutab ebatavalisi stringe (kuupäevad tekstiga, Giti räsi jne), saate selle teabe Debiani muudatuste logi salvestada, kuid kõige parem on hoida tarballi väli "upstream version" puhas ja korrastatud.

Väljalaske-eelsete või väljalaskekandidaatide versioonide puhul lisatakse tavaliselt tilde (~) , et dpkg tõlgendaks järjekorda õigesti . Näiteks kui teil on väljalaske-eelne gentoo-0.9.12-ReleaseCandidate-99.tar.gz, saate selle ümber nimetada gentoo-0.9.12~rc99.tar.gz-ks, nii et lõpliku versiooni väljaandmisel loetakse 0.9.12 uuemaks kui 0.9.12~rc99.

Tarballist binaarpaketiks: pakett .deb-failina

Koodi tarball on vaid esimene samm, kui teie eesmärk on programmi levitada installitava .deb paketina (vt populaarsed tarkvarapakettide installijad ). Algsest tar.gz-failist saate luua vajaliku struktuuri .deb paketi genereerimiseks, lisada kompileeritud binaarfaili ja metaandmed ning ehitada paketi dpkg-deb abil.

  Mac ei loo ühendust WiFi kogukonnaga: lihtsad viisid selle parandamiseks?

Seestpoolt koosneb .deb-fail põhimõtteliselt kolmest osast: debian-binary (minimaalne tekstifail koos vormingu versiooniga), control.tar.gz (metaandmed ja juhtskriptid) ja data.tar.gz (installitavad binaarfailid ja failid). `ar` utiliidi abil saab .deb-faili uurida ja täpselt neid komponente näha.

Millegi väga lihtsa, näiteks C-keeles "hello world" programmi pakkimiseks võiksid esmalt lähtekoodist binaarfaili kompileerida ja seejärel käsitsi seadistada .deb kataloogistruktuuri . Sa peaksid looma kataloogi nimega hello/, selle sisse alamkataloogi nimega DEBIAN, mis sisaldab juhtfaili, ja seejärel kopeerima käivitatava faili sobivale teele (näiteks hello/usr/bin/). Pärast seda tuleks lihtsalt käivitada ` dpkg-deb --build hello`, et genereerida hello.deb fail.

Tarballist RPM-pakkideni ja teistesse vormingutesse

Midagi väga sarnast toimub Red Hati maailmas RPM-pakettidega . Lähtekood levitatakse tavaliselt tarballidena ja sealt genereeritakse SRPM-id (RPM-lähtekoodipaketid), mis sisaldavad nii algset tarballi kui ka ühte või mitut parandust ja .spec-faili, mis kirjeldab programmi kompileerimist ja installimist.

Sellisel juhul sisaldab töökataloogi struktuur selliseid teid nagu RPMS, SRPMS, SOURCES, SPECS jne. Algne tarball läheb kausta SOURCES, .spec fail kausta SPECS ja sealt edasi saate rpmbuildi abil genereerida binaarfaili .rpm ja soovi korral ka faili .src.rpm. .spec fail sisaldab teavet nagu paketi nimi, versioon, sõltuvused, ehituskäsud ja failide loend, mis peaksid süsteemi lõpuks jõudma.

Lõpptulemus on väga sarnane .deb-failiga: binaarpakett, mille kasutaja saab installida oma tavapärase paketihalduriga, kuid mille juur on tavaliselt organiseeritud ja hästi versioonitud lähtekoodi tar-fail.

Loo tarballe ja pakenda universaalsetes vormingutes

Viimastel aastatel on tekkinud formaadid nagu Snap, Flatpak ja AppImage , mille eesmärk on pakkuda Linuxile "universaalseid" pakette ja leevendada suurt osa distributsioonide killustatusest. Kuigi igal neist on oma mehaanika, võivad need kõik põhineda koodipuul, mida saab levitada ka tarballina.

Näiteks Snapis defineerid failis snapcraft.yaml , kuidas sinu rakendus on ehitatud: nimi, versioon, lähtekood (mis võib olla URL serveri tarballi), ehituspluginad (autotools, cmake jne) ja viimane käivitatav käsk. Seejärel laadib Snapcraft tarballi alla, kompileerib ja pakib selle koos selle sõltuvustega.

Flatpak töötab JSON- või YAML-manifestiga , mis kirjeldab käituskeskkonda, SDK-d ja ehitatavaid mooduleid, täpsustades ka lähtekoodi (mis võib olla kohalik fail või serveri tarball). Jällegi on tarball lähtekoodi loomulik konteiner, mis hiljem universaalsesse paketti integreeritakse.

AppImage'is, kuigi sageli alustatakse eelkompileeritud binaarfailidest, saab sinna jõuda ka klassikalise koodipuu abil: kompileeritakse tarballist, genereeritakse AppDir struktuur ja lõpuks luuakse isekäivituv pildike, mille kasutaja saab käivitada ilma korraliku installimiseta.

Tarballid, otsene tihendamine ja muud praktilised kasutusalad

Lisaks pakkimiskoodile kasutatakse tar-i laialdaselt üldise teabe tihendamiseks ja lahtipakkimiseks : konfiguratsioonikataloogid, isiklikud kaustad, aeg-ajalt tehtavad varukoopiad jne. Unixi-laadsetes süsteemides, sealhulgas paljudes Androidi ja macOS-i versioonides, on tar sageli vaikimisi kaasas ja pakub väga mõistlikku tihendussuhet, paljudel juhtudel ligi 50%, üsna suure töökiirusega.

Kuid pidage meeles, et on nüansse: sellised tööriistad nagu gzip või bzip2 tihendavad ainult faile, mitte katalooge . Kui käivitate käsu `tar -czf` või `tar -cjf`, siis tar grupeerib esmalt kataloogid ja edastab tulemuse seejärel gzip-ile või bzip2-le. Seetõttu on nii praktiline kasutada tar-i nende utiliitide "esiotsa" rollis.

Kui soovid kiiresti kontrollida tar-faili suurust või mõõta tihendamise mõju, saad `tar` käsuga `wc -c` aheldada , et baite lugeda, kasutades standardväljundina sidekriipsu. Näiteks:

tar -czf – näidisArhiiv.tar | wc -c

See nipp annab lihtsa ettekujutuse sellest, kui palju kaalu konkreetse kataloogi pakkimine kokku hoiab, mis on väga kasulik võrgu kaudu teisaldatavate koodijaotuste või varukoopiate ettevalmistamisel.

Nagu näete, avab koodi pakkimiseks ja levitamiseks tarballide kasutamise omandamine samm-sammult palju uksi: alates projektide lihtsate tihendatud koopiate loomisest kuni puhta lähtekoodi ettevalmistamiseni pakkimiseks .deb, .rpm või universaalvormingutesse; kõike seda säilitades samal ajal õigused, kataloogistruktuuri ja head versioonimistavad, mis muudavad teie (ja teie tarkvara kasutajate) elu palju lihtsamaks.

Seotud artikkel:
Need on 5 kõige populaarsemat tarkvarapaketi installijat.