Ricerca nel sito web

Come dividere un grande archivio "tar" in più file di determinate dimensioni


Se sei preoccupato di trasferire o caricare file di grandi dimensioni su una rete, non preoccuparti più, perché puoi spostare i tuoi file in bit per gestire le basse velocità della rete suddividendoli in blocchi di una determinata dimensione.

In questa guida pratica, esploreremo brevemente la creazione di file di archivio e la loro suddivisione in blocchi di dimensioni selezionate. Utilizzeremo tar, una delle utilità di archiviazione più popolari su Linux e sfrutteremo anche l'utilità split per aiutarci a suddividere i nostri file di archivio in piccoli bit.

Prima di proseguire, prendiamo nota di come possono essere utilizzate queste utilità. La sintassi generale di un comando tar e split è la seguente:

tar options archive-name files 
split options file "prefix”

Vediamo ora alcuni esempi per illustrare il concetto principale di questo articolo.

Esempio 1: Possiamo innanzitutto creare un file di archivio come segue:

tar -cvjf home.tar.bz2 /home/aaronkilik/Documents/* 

Per confermare che il file di archivio è stato creato e controllarne anche le dimensioni, possiamo usare il comando ls:

ls -lh home.tar.bz2

Quindi, utilizzando l'utilità split, possiamo suddividere il file di archivio home.tar.bz2 in piccoli blocchi ciascuno di dimensioni 10 MB come segue:

split -b 10M home.tar.bz2 "home.tar.bz2.part"
ls -lh home.tar.bz2.parta*

Come puoi vedere dall'output dei comandi sopra, il file di archivio tar è stato diviso in quattro parti.

Nota: nel comando dividi sopra, l'opzione -b viene utilizzata per specificare la dimensione di ciascun blocco e "home.tar.bz2.part" è il prefisso nel nome di ciascun file di blocco creato dopo la divisione.

Esempio 2: Simile al caso precedente, qui possiamo creare un file di archivio di un file immagine Linux Mint ISO.

tar -cvzf linux-mint-18.tar.gz linuxmint-18-cinnamon-64bit.iso 

Quindi segui gli stessi passaggi dell'esempio 1 sopra per dividere il file di archivio in piccoli frammenti di dimensione 200 MB.

ls -lh linux-mint-18.tar.gz 
split -b 200M linux-mint-18.tar.gz "ISO-archive.part"
ls -lh ISO-archive.parta*

Esempio 3: In questo caso, possiamo utilizzare una pipe per collegare l'output del comando tar per dividerlo come segue:

tar -cvzf - wget/* | split -b 150M - "downloads-part"

Conferma i file:

ls -lh downloads-parta*

In quest'ultimo esempio, non dobbiamo specificare un nome di archivio come hai notato, usiamo semplicemente un segno -.

Come unire i file Tar dopo la divisione

Dopo aver diviso con successo i file tar o qualsiasi file di grandi dimensioni in Linux, puoi unire i file utilizzando il comando cat. L'utilizzo di cat è il metodo più efficiente e affidabile per eseguire un'operazione di unione.

Per unire nuovamente tutti i blocchi o file tar, eseguiamo il comando seguente:


cat home.tar.bz2.parta* >backup.tar.gz.joined

Possiamo vedere che dopo aver eseguito il comando cat, combina tutti i piccoli blocchi che avevamo creato in precedenza nel file di archivio tar originale della stessa dimensione.

Conclusione

L'idea è semplice, come abbiamo illustrato sopra, devi semplicemente conoscere e capire come utilizzare le varie opzioni delle utilità tar e split.

Puoi fare riferimento alle pagine di immissione manuale per saperne di più su altre opzioni ed eseguire alcune operazioni complesse oppure puoi leggere il seguente articolo per saperne di più sul comando tar.

Da non perdere: 18 utili esempi di comandi "tar"

Per qualsiasi domanda o ulteriore suggerimento, puoi condividere i tuoi pensieri tramite la sezione commenti qui sotto.