Lavorare con gli archivi tar in Linux
La guida completa per creare, estrarre e gestire i file tar.
tar è lo strumento di riferimento su Linux per raggruppare file e directory in un singolo archivio. Attenzione: tar di per sé non comprime nulla — si limita a impacchettare i file preservando la struttura delle directory, i permessi, i proprietari, i timestamp e gli altri metadati. La compressione viene aggiunta da strumenti separati:
- gzip → .tar.gz o .tgz (il più comune)
- bzip2 → .tar.bz2 / .tbz (compressione migliore, più lento)
- xz → .tar.xz (compressione eccellente, standard moderno)
Per questo la maggior parte degli archivi Linux ha estensioni doppie come archive.tar.gz.
Comandi e flag principali
-c— crea un nuovo archivio-x— estrae i file da un archivio-t— elenca il contenuto (senza estrarre)-f— specifica il nome del file archivio (quasi sempre necessario)-v— verbose: mostra i file man mano che vengono elaborati-z— filtra tramite gzip (per .tar.gz)-j— filtra tramite bzip2 (per .tar.bz2)-J— filtra tramite xz (per .tar.xz)-C— cambia directory prima di estrarre (o di comprimere)--exclude— esclude file o pattern
Creare archivi
-
Standard .tar.gz (veloce e ampiamente compatibile):
tar -czvf archive.tar.gz /path/to/folderDirectory corrente:
tar -czvf archive.tar.gz . -
.tar.bz2 (compressione più forte, più lento):
tar -cjvf archive.tar.bz2 /path/to/folder -
.tar.xz (miglior rapporto di compressione, scelta moderna):
tar -cJvf archive.tar.xz /path/to/folder -
.tar semplice (senza compressione — raro oggi):
tar -cvf archive.tar /path/to/folder
I nostri prodotti e servizi
Estrarre archivi
-
tar.gz:
tar -xzvf archive.tar.gz -
tar.bz2:
tar -xjvf archive.tar.bz2 -
tar.xz:
tar -xJvf archive.tar.xz -
Estrazione in una cartella specifica (viene creata automaticamente se non esiste):
tar -xzvf archive.tar.gz -C /path/to/destination
Visualizzare il contenuto di un archivio (senza estrarre)
tar -tzvf archive.tar.gz # .gz
tar -tjvf archive.tar.bz2 # .bz2
tar -tJvf archive.tar.xz # .xz
tar -tvf archive.tar # tar semplice
Esempi pratici
- Escludere log e cartelle cache:
tar -czvf archive.tar.gz /var/www --exclude='*.log' --exclude='cache'
- Aggiungere file a un archivio tar esistente:
tar -rvf archive.tar newfile.txt
- Estrarre solo un file o una cartella specifica:
tar -xzvf archive.tar.gz path/inside/archive/file.php
- Archiviare solo i file PHP trovati tramite ricerca:
find /var/www -name "*.php" | tar -czvf php_files.tar.gz -T -
Consigli avanzati
- Usa sempre
-vquando lavori manualmente — puoi vedere esattamente cosa viene elaborato. - Per archivi molto grandi, aggiungi il feedback di avanzamento:
--checkpointe--checkpoint-action=dot(mostra un punto ogni 1000 file) - Estrai e spostati nella cartella in un solo comando:
tar -xzvf archive.tar.gz && cd ${archive%.tar.gz} - Preferisci .tar.xz oggi — offre di solito la dimensione più ridotta con una buona velocità su hardware moderno.
Aiuto
Hai domande o ti serve una mano? Scrivici tramite il sistema di ticket — siamo sempre qui per aiutarti!