GNU/Linux >> Linux Esercitazione >  >> Linux

Creare un archivio di catrame diviso in blocchi di dimensioni massime?

Ho bisogno di eseguire il backup di una directory abbastanza grande, ma sono limitato dalle dimensioni dei singoli file. In sostanza, vorrei creare un tar.(gz|bz2) archivio che è suddiviso in archivi di massimo 200 MB. Clonezilla fa qualcosa di simile suddividendo i backup delle immagini denominati in questo modo:

sda1.backup.tar.gz.aa
sda1.backup.tar.gz.ab
sda1.backup.tar.gz.ac

C'è un modo per farlo in un comando? Capisco come usare la split comando, ma vorrei non dover creare un archivio gigante, quindi dividerlo in archivi più piccoli, poiché ciò raddoppierebbe lo spazio su disco necessario per creare inizialmente l'archivio.

Risposta accettata:

Puoi reindirizzare tar al comando split:

tar cvzf - dir/ | split --bytes=200MB - sda1.backup.tar.gz.

Su alcuni sistemi *nix (come OS X) potresti ricevere il seguente errore:

split: illegal option -- -

In tal caso, prova questo (nota il -b 200m ):

tar cvzf - dir/ | split -b 200m - sda1.backup.tar.gz.

Se stai tentando di dividere il file per adattarlo a un'unità formattata FAT32,
utilizza un limite di byte di 4294967295. Ad esempio:

tar cvzf - /Applications/Install macOS Sierra.app/ | 
split -b 4294967295 - /Volumes/UNTITLED/install_macos_sierra.tgz.

Quando vuoi estrarre i file usa il seguente comando (come ha commentato @Naftuli Kay):

cat sda1.backup.tar.gz.* | tar xzvf -

Linux
  1. Creare un archivio Tar di una directory, ad eccezione dei file nascosti?

  2. Rottura dell'output in nuove righe?

  3. 10 esempi di comandi Tar in Linux per creare ed estrarre archivi

  4. Come creare un archivio zip compatibile con Linux di una directory su un Mac

  5. Come posso creare un file tar multipart in Linux?

Comando tar in Linux con esempi

Come dividere l'archivio "tar" di grandi dimensioni in più file di determinate dimensioni

Comando Tar in Linux (crea ed estrai archivi)

Come creare file Tar Gz

Tar Vs Zip Vs Gz:differenza ed efficienza

Crea file di dimensioni personalizzate in Linux