Come aprire file .gz e .tgz in Linux

Decomprimere i file, soprattutto nell'ambiente Linux, è un'attività di routine. Con l'uso frequente di file .gz e .tgz, comprendere le sfumature di questi tipi di file e gli strumenti utilizzati per gestirli è fondamentale. Questa guida approfondirà il mondo dei file GZ e TGZ, offrendo approfondimenti e istruzioni dettagliate su come gestirli in modo efficiente.

Comprendere la compressione dei file in Linux

La compressione dei file è fondamentale per ottimizzare l'archiviazione e garantire un trasferimento efficiente dei dati. In Linux, ciò si ottiene utilizzando vari strumenti e formati di file, ciascuno con caratteristiche uniche.

Cosa rende unici i file TAR, GZ e TGZ?

  • Spiegazione dei file TAR
    • TAR sta per Archivio su nastro. La sua funzione principale è raggruppare più file in un'unica entità nota come file TAR. È interessante notare che TAR non comprime questi file; li raggruppa semplicemente, garantendo che la loro dimensione originale rimanga invariata.
  • Immergersi nei file GZ
    • I file GZ emergono dallo strumento di compressione Gzip. A differenza di TAR, Gzip comprime il file riducendone le dimensioni. Tuttavia, vale la pena notare che Gzip comprime i singoli file. Pertanto, se disponi di più file, Gzip produrrà un numero equivalente di file GZ. Questo metodo di compressione è un punto fermo nei sistemi Linux e Unix.
  • La fusione: file TAR.GZ
    • Un file TAR.GZ è essenzialmente un file TAR compresso utilizzando Gzip. È un ibrido, che combina la capacità di raggruppamento di TAR con l'abilità di compressione di Gzip. Questo tipo di file si trova prevalentemente nei sistemi Linux e Unix.
  • TGZ: sinonimo di TAR.GZ
    • I file TAR.GZ vengono spesso definiti file TGZ. Sono essenzialmente gli stessi, solo chiamati diversamente per comodità.
  • File ZIP: una rapida panoramica
    • I file ZIP, come TAR, raggruppano più file. Tuttavia, comprimono anche questi file, in modo simile a GZ. Sebbene i file ZIP siano onnipresenti in vari sistemi operativi, sono più comunemente associati a Windows.

Tarball o Tarfile: cosa c'è in un nome?

Il termine tarball o tarfile è usato colloquialmente per descrivere file di archivio in formati TAR specifici:

  • Fascicolo TAR: Essenzialmente un file di archivio su nastro.
  • File TAR.GZ o TGZ: Questo è quando il file TAR subisce la compressione Gzip.
  • File TAR.BZ2 o TBZ: questo formato emerge quando la compressione Bzip2 viene applicata al file TAR.

Un tarball è essenzialmente una raccolta di file raggruppati insieme. Il comando tar produce questi file. Sebbene tar non supporti intrinsecamente la compressione, spesso collabora con strumenti di compressione come Gzip o Bzip2 per risparmiare spazio su disco. Queste utilità in genere comprimono singoli file, quindi interagiscono con tar per produrre un singolo file da più file.

Tar e Gzip/Gunzip per file GZ e TGZ in Linux

Prendendo E Gzip sono sostenitori dell'ecosistema Linux, rinomati per le loro capacità di archiviazione e compressione dei file. Anche se spesso lavorano in tandem, hanno scopi distinti:

  • Il ruolo dell'utilità Tar
    • Prendendo amalgama più file in un unico archivio, spesso chiamato tarball. Questo archivio conserva gli attributi del file system dei file incapsulati, come autorizzazioni e proprietà. Dopo la creazione, gli utenti possono comunque modificare l'archivio, aggiungendo o rimuovendo file o modificando i nomi dei file a meno che non sia compresso. IL tar Il comando è il punto di riferimento per la gestione dei file TAR e TAR.GZ in Linux, facilitandone la creazione, la modifica e l'estrazione.
    • Storicamente, i tarball erano il mezzo di backup preferito, trasferito su unità nastro locali, da qui il soprannome Tape Archive (Tar). Anche se Tar non comprime i file, l'uso moderno implica invariabilmente la compressione per risparmiare spazio su disco e facilitare i trasferimenti tra sistemi.
    • Tar è versatile e supporta numerosi metodi di compressione. Le utility Gzip/Gunzip e Bzip2/Bunzip2 regnano sovrane, con l'alleanza Tar-Gzip che emerge come la principale soluzione di archiviazione file per Linux.
  • Gzip nel panorama Linux
    • Gzip è la principale utility di compressione file di Linux. Può funzionare in modo indipendente, comprimendo singoli file. Quando Gzip comprime un file, crea una nuova variante compressa, mentre l'originale viene generalmente scartato. Il file compresso risultante non ha l'estensione GZ. Di conseguenza, quando Gzip collabora con Tar, l'archivio compresso assume l'estensione TAR.GZ o TGZ.
    • Gzip contro Zip: Sebbene Gzip utilizzi lo stesso algoritmo di compressione della rinomata utility Windows, Zip, c'è una differenza fondamentale. Gzip comprime file singoli. Pertanto, Tar viene prima invocato per produrre un tarball, che Gzip comprime. Al contrario, Zip comprime ciascun file prima di archiviarlo, risultando in una dimensione di archivio leggermente maggiore. Questo approccio di compressione complica l'estrazione di singoli file senza prima decomprimere l'intero tarball.

Creazione e decompressione di file GZ e TGZ in Linux

Con i comandi Tar e Gzip/Gunzip, gli amministratori di sistema possono creare e decomprimere facilmente file GZ e TGZ. Simili alle loro controparti Linux, queste utilità includono una varietà di flag che ne migliorano la funzionalità e ne consentono un utilizzo personalizzato. Poiché Gzip/Gunzip e Tar sono parte integrante della maggior parte delle distribuzioni Linux, tutto ciò che serve è l'accesso SSH e una conoscenza di base della riga di comando di Linux.

Utilizzo di Gzip e Gunzip per la gestione dei file .gz

Sebbene i comandi Gzip e Gunzip possano decomprimere i file GZ in Linux, ma vacillano di fronte agli archivi Tar compressi. Ad esempio, un file TAR.GZ, nonostante sia un archivio TAR compresso con Gzip, richiede il comando Tar per la decompressione e l'estrazione del file.

Comprimere file con Gzip

Gzip facilita la compressione di singoli file, producendo una nuova variante estesa GZ pur mantenendo le autorizzazioni e la proprietà del file originale. Per impostazione predefinita, il file originale viene eliminato dopo la compressione. Tuttavia, questo comportamento è mutevole.

Esploriamo la compressione di tre file situati nella directory corrente utilizzando Gzip:

# Compress multiple files with GZIP
gzip -kv example1 example2 example3

Qui, il flag -k garantisce che i file originali rimangano intatti, mentre l'opzione -v fornisce una percentuale di compressione in tempo reale e la visualizzazione del nome del file. Il comando produce tre nuovi file GZ nella directory. Negli scenari in cui il flag -k non è applicabile, è possibile richiamare l'opzione -c per preservare il file originale.

Il flag -c può anche essere sfruttato per modificare la directory del file appena compresso o addirittura rinominarlo:

# Compress a file without deletion and relocate it to a different directory
gzip -c example1 > /home/temp/compressed_example1.gz

Ispezione dei file GZ senza decompressione

Il comando zcat in Linux offre un'anteprima del contenuto di un file compresso senza richiedere la decompressione:

# Display the contents of a GZIP compressed file
zcat compressed_example1.gz

Decompressione dei file GZ

I file GZ possono essere decompressi in Linux aggiungendo il flag -d al comando Gzip/Gunzip. Tutti i flag discussi in precedenza rimangono applicabili. Per impostazione predefinita, il file GZ viene scartato dopo la decompressione a meno che non venga richiamato il flag -k. Decomprimiamo i file GZ che abbiamo precedentemente compresso nella stessa directory:

# Decompress GZ file
gzip -dv compressed_example1.gz

In questo contesto i seguenti comandi sono sinonimi:

Usando il comando gunzip:

# Decompress GZ file
gunzip example.gz

Utilizzando il comando gzip -d:

# Decompress GZ file
gzip -d example.gz

Utilizzo di Tar per la gestione dei file TGZ

Il comando tar è fondamentale per la gestione dei file TGZ in Linux. Gli utenti possono decomprimere un intero archivio o selezionare file o directory specifici.

Crea un archivio tar.gz

Prima di creare un archivio Tar compresso con Gzip, identificare i file da includere e decidere la loro strategia di raggruppamento. Puoi selezionare manualmente i file o archiviare un'intera directory con le sue sottodirectory. A differenza di Gzip, che opera su singoli file, la creazione di un archivio Tar compresso con Gzip non elimina i file originali.

# Construct a TGZ archive of a directory and relocate it to a different folder
tar -czvf archive.tar.gz directory_name -C /home/temp

In questo comando:

  • c avvia la creazione dell'archivio.
  • z attiva la compressione Gzip.
  • v attiva la modalità dettagliata, offrendo un output dettagliato dell'esecuzione del comando.
  • f designa il nome file del nuovo archivio.
  • C specifica una directory di destinazione alternativa.

Ispezione dei contenuti dell'archivio

Il flag -t facilita l'esame del contenuto di un file di archivio TGZ esistente. Inoltre, gli utenti possono utilizzare pipe per individuare file specifici, soprattutto in archivi estesi:

# Enumerate the contents of a TGZ archive
tar -tvf archive.tar.gz

Decompressione dei file tar.gz

Gli archivi Tar compressi con Gzip possono essere decompressi utilizzando il flag -x (extract) fornito dal comando tar. Per impostazione predefinita, Tar estrae il contenuto del file TGZ e lo invia alla directory di lavoro corrente. Tuttavia, gli utenti possono specificare una directory alternativa per l'estrazione:

# Decompress Tar Gz file and relocate uncompressed files to a different directory
tar -xzvf archive.tar.gz -C /home/temp

Spesso gli utenti potrebbero dover estrarre file o cartelle specifici da un archivio TGZ. IL tar il comando facilita questo:

# Validate the desired file's presence in the archive
tar -tvf archive.tar.gz | grep desired_file

Poiché il file risiede nella directory archiviata, l'estrazione diretta senza ripristinare l'intera directory risulta complessa. L'opzione strip-components aggira questo ostacolo, consentendo agli utenti di estrarre i file o le directory desiderati senza le loro cartelle principali. Gli utenti devono specificare il percorso completo del file o della directory per l'estrazione:

# Extract a specific file from the Tar Gz archive
tar -xzvf archive.tar.gz path/to/desired_file --strip-components=2

Conclusione

La gestione dei file GZ e TGZ è una competenza integrale per gli utenti Linux. Questi formati di file sono fondamentali per la compressione e l'archiviazione dei dati negli ecosistemi Linux. Padroneggiando i comandi Gzip e Tar, gli utenti possono gestire, comprimere e decomprimere in modo efficiente i propri dati, garantendo archiviazione e trasferimento dati ottimali. Che tu sia un utente Linux esperto o un principiante, comprendere questi comandi e le loro sfumature può semplificare in modo significativo le tue attività e migliorare la tua esperienza Linux.

Joshua James
Seguimi
Ultimi post di Joshua James (vedi tutto)

Lascia un commento