13.1.1 Pacchetti tarball

Un tarball è un file contenente un insieme di altri file, in formato non compresso, che ha generalmente l’estensione .tar. Tale file viene gestito dal comando tar (man page tar(1)) che è un “archiviatore” di file, ovvero non fa altro che raggruppare più file all’interno di un unico file.

____________________________________________________________________

Comando: tar
Path: /bin/tar

SINTASSI  
$ tar [option] file_name [file_name_2 [...]]  
DESCRIZIONE

____________________________________________________________________

Quindi, per installare il software contenuto in un pacchetto .tar, è sufficiente copiare il file che lo contiene all’interno di una directory ed estrarre i file in esso contenuti con il seguente comando

 
# tar -xvf nome_file.tar  
dove nome_file.tar è il nome del file contenente il tarball.

Per esigenze di spazio, tali pacchetti vengono generalmente compressi mediante i programmi compress, gzip o bzip2. Si ottengono così file con dimensioni più contenute, con le estensioni .tar.Z, .taZ o .taz (tarball compressi con compress), .tar.gz o .tgz (tarball compressi con gzip) e .tar.bz2, .tar.bz, .tbz2 o .tbz (tarball compressi con bzip2).

Per installare un pacchetto tarball compresso con compress o gzip, si deve prima decomprimere il file con l’opportuno decompressore, uncompress o gunzip (gunzip è completamente compatibile con uncompress), ottenendo un tarball che può essere trattato come precedentemente illustrato. Si possono anche effettuare entrambi i passi contemporaneamente, con il comando

 
# tar -zxvf nome_file  
dove optnome_file è il nome del file contenente il tarball, compresso con gzip. Esso ha generalmente estensione .tar.Z, .taZ, .taz, .tar.gz o .tgz.

Per installare un pacchetto tarball compresso con bzip2, si deve prima decomprimere il file con l’opportuno decompressore bunzip2, ottenendo un tarball che può essere trattato come precedentemente illustrato. Si possono anche effettuare entrambi i passi contemporaneamente, con il comando

 
# tar -jxvf nome_file  
dove nome_file è il nome del file contenente il tarball, compresso con bzip2. Esso ha generalmente estensione .tar.bz2, .tar.bz, .tbz2 o .tbz.

A questo punto sarà possibile utilizzare il pacchetto stesso dopo aver letto le relative istruzioni, presenti, in genere, in un file denominato README, INSTALL, o simili, all’interno della directory creata dalla decompressione del pacchetto stesso.2

Poiché il comando tar esegue soltanto l’estrazione di più file da un unico file, eventualmente compresso, non si ha la possibilità di eseguire comandi specifici, inerenti all’installazione di un software su un filesystem. Pertanto è probabile che, una volta estratti i file del software considerato, si debba anche lanciare uno specifico comando per l’inizializzazione di alcuni file, che generalmente viene effettuata con uno script di shell denominato install.sh (o qualcosa del genere).

Nel caso in cui si voglia installare un software di cui si ha un tarball contenente i file sorgenti dello stesso (il nome del file è del tipo pkg_name.scr.ext, dove pkg_name è il nome indicativo del pacchetto e ext è l’estensione che denota il tipo del pacchetto), è necessario effettuare la compilazione dei sorgenti prima di poter utilizzare il software. La compilazione dei sorgenti è un’operazione complessa e delicata, e poiché non esiste una procedura standard è necessario leggere la documentazione distribuita assieme ai sorgenti.3

Tipicamente la procedura di installazione di un pacchetto di sorgenti si riassume nei seguenti passi:

 
# tar -zxvf nome_file
# cd package_dir
# ./configure
# make
# make install  
dove nome_file è il nome del file contenente il pacchetto tarball compresso (in questo caso si è considerato soltanto il caso della compressione con compress o gzip) e package_dir è la directory creata dalla decompressione del file stesso.

Di seguito è riportata una breve descrizione dei comandi precedenti: