Introduzione

Un archivio tar è un file che memorizza una raccolta di altri file, incluse informazioni su di essi, come la proprietà, le autorizzazioni e il timestamp.

Nei sistemi operativi Linux, è possibile utilizzare il comando tar per creare archivi tar. Il comando può anche comprimere gli archivi usando una vasta gamma di programmi di compressione come gzip che è l'algoritmo più popolare.

Per convenzione, il nome di un archivio tar compresso con gzip dovrebbe terminare con .tar.gz o .tgz.

Questo articolo descrive come creare file tar.gz su Linux.

Creare un file tar.gz

La maggior parte delle distribuzioni Linux include la versione GNU tar che supporta la compressione degli archivi.

La forma generale del comando per la creazione di file tar.gz è la seguente:

tar -czf archive-name.tar.gz file-name...

Ecco cosa significano le opzioni di comando:

  • -c - indica di creare un nuovo archivio.
  • -z - imposta il metodo di compressione su gzip.
  • -f archive-name.tar.gz - specifica il nome dell'archivio.
  • file-name... un elenco separato da spazi di file e directory da aggiungere all'archivio.

L'utente che esegue il comando deve disporre delle autorizzazioni di scrittura sulla directory in cui verrà creato il file tar.gz e delle autorizzazioni di lettura sui file aggiunti.

Ad esempio, per creare un archivio denominato "archive.tar.gz" da "file1" e "file2", utilizzare il comando seguente:

tar -czf archive.tar.gz file1 file2

In caso di successo, il comando non stampa alcun output. Per verificare che l'archivio sia stato creato, elencare il contenuto della directory con ls.

Utilizzare l'opzione -v per stampare i nomi dei file che vengono aggiunti all'archivio sul terminale.

Se si desidera creare tar.gz in una directory specifica, fornire un percorso completo al file di archivio:

tar -czf /home/user/archive.tar.gz file1 file2

È possibile creare file tar.gz dal contenuto di una o più directory o file. Per impostazione predefinita, le directory vengono archiviate in modo ricorsivo a meno che non venga specificata l'opzione --no-recursion.

L'esempio seguente mostra come creare un archivio denominato "web_backup.tar.gz" della directory /var/www/website:

tar -czf web_backup.tar.gz /var/www/website

Se stai eseguendo un sistema con una versione precedente di tar che non supporta la compressione, puoi usare il comando gzip:

tar -czf - file1 file2 | gzip > archive.tar.gz

Nell'esempio sopra, il comando tar restituisce l'archivio a stdout (rappresentato da -). Viene eseguito il piping dell'archivio gzip, che comprime e scrive l'archivio sul disco.

Esempi

Crea un file tar.gz da tutti i file ".jpg":

tar -czf images.tar.gz *.jpg

Il carattere wildcard (*) indica tutti i file che terminano con l'estensione ".jpg".

Crea un file tar.gz, trasferiscilo su ssh ed estrailo sul computer remoto:

tar cvf - project | ssh [email protected]_addr "tar xv -C /var/www"

Conclusione

Il file tar.gz è un archivio Tar compresso con Gzip. Per creare un file tar.gz, utilizzare il comando tar -czf, seguito dal nome dell'archivio e dai file che si desidera aggiungere.