How to Compress and Split Files in Ubuntu
In Ubuntu, the Archive Manager (or file-roller) has make it easy for anyone to compress and zip up a file or folder, but if you have a large file, say 20Gb, and you want to back it up to the CD/DVD, you will find that no amount of compression can you reduce the file size to fit into 1 CD/DVD. In such case, it is a better solution to compress and split the large file into several smaller files and store them separately. This also applies if you want to share a large file on a file-sharing site. Splitting the compressed file into several smaller files will make it easier for others to download.
Let’s say that the large file is a movie file found in /home/username/movie/large-file.avi and you want to compress, split and store the smaller files at the folder /home/username/movie/split-flies/, this is what you type in the terminal:
cd movie/split-files (change the filepath to where you want to keep the split files)
tar -cvj /home/username/movie/large-files.avi | split -b 650m -d – “large-files.tar.bz.”
You will now see several files appearing at the split-files folder, each with file size of 650MB and with filenames large-files.tar.bz.00, large-files.tar.bz.01, large-files.tar.bz.02, etc.
To recover and extract the split files, type
cat large-files.tar.bz.* > large-files.tar.bz
tar -xvj large-file.tar.bz
and you can get the original file back.
Do you know of any other ways to compress and split files in Ubuntu?
Tags: compress, Linux, split, Ubuntu
Enjoyed the article? Subscribe to Make Tech Easier today to get your daily updates of technology tutorials, tips and tricks.





3 pingbacks/trackbacks (Click to open)
- 8 Ways to Maintain a Clean, Lean Ubuntu Machine - Make Tech Easier
- How to Split Files in Ubuntu « TTC Shelbyville - Technical Blog
- Mel The Geek and More… » 8 Ways to Maintain a Clean, Lean Ubuntu Machine
[Click to close]4 Responses
You wrote “tar -xvf large-file.tar.bz”
It should read “tar -xvjf large-file.tar.bz” because the tar file was compress with bzip2 and needs to be uncompressed with the same program.
Another more optimal way would be:
“cat large-file.tar.gz.* | tar -xvj”
Reply
@qiet72: Yes. You are correct. Thanks for spotting and pointing out the error.
Reply
From looking around this also will work:
split -d –bytes=104857600 file.rar
and
cat < file.rar.*
Reply
Oops, I just noticed that in my comment it’s doing the same thing as what this tutorial says. I should pay better attention to the whole command next time. Thanks for this guide :D
Reply