21

How can I create a multipart tar file in Linux?

29

You can use the split command to split an archive in to multiple files. For example, if I wanted my archive stored in 1 MByte files:

tar -cvf - <stuff to put in archive> | split --bytes=1m --suffix-length=4 --numeric-suffix - myarchive.tar.

And when I want to recombine and untar:

cat myarchive.tar.* | tar xvf -
  • 1
    in gnu split, --numeric-suffixes is the param. – kevinf Nov 23 '16 at 5:00
2

GNU Tar natively supports multiple volumes. There are many options, the one I found neat was

tar --create --multi-volume --file=/tmp/file1.tar --file=/tmp/file2.tar files_to_archive 

size can be specified via -L (tape-length)

It does not support compression in this manner however, so you would have to seperately do that. "tar: Cannot use multi-volume compressed archives"

1

Use tar c to create the tar archive, and specify the k size-in-kbytes parameter to control the maximum size of each part. You'll end up with ((original size)/(part size) + 1) parts.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.