Как разбить tar.gz архив на тома и как его потом склеить

tar-gzДля того чтобы создать разбитый на тома архив в консоли нужно выполнить обычное архивирование с передачей результата в OUTPUT и таким образом на вторую команду конвейера, которая и разбивает полученный результат на тома нужного размера.

tar czf - ./backup | split -d -b 10m - backup.tar.gz.

(Про точку в конце первой команды не забываем)

В результате получится несколько файлов по 10 Мб с окончанием .01 .02 .03 и т.д.

Для того чтобы потом склеить полученные тома нужно выполнить cat с передачей через OUTPUT данных архиватору.

cat backup.tar* | tar xzf -

 

Разделение большого файла на несколько частей

Split

$ split --bytes=<размер части> <исходный файл> <префикс имени части>

Размер частей может иметь суффикс, означающий множитель.

b — 512
kB — 1000
K — 1024
MB — 1000*1000
M — 1024*1024
GB — 1000*1000*1000
G — 1024*1024*1024

и так далее для T, P, E, Z, Y.

Пример:

$ split -a 1 -d -b 100M big.iso small.iso.part

Получим много файлов по 100 Мб, с суффиксами part0, part1, part2, part3…:

small.iso.part0
small.iso.part1
small.iso.part2
small.iso.part3

и т.д.

Чтобы снова объединить все части воедино, можно использовать команду cat:

$ cat small.iso.part* > big.iso

Утилита cat соберет все файлы, начиная с small.iso.part0.