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








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]11 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”
@qiet72: Yes. You are correct. Thanks for spotting and pointing out the error.
From looking around this also will work:
split -d –bytes=104857600 file.rar
and
cat < file.rar.*
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
Is their a way to do this with 7zip using deflate64
7z a -t=zip -mm=deflate64 archive.zip file
is how you just zip a file. but how do you split it?
Hi!
I´m i newbie, who just installed ubuntu as my las chanche to recover my shit from my laptop to my external hdd.
io don´t look tru these command.
My File is an iso. and its in the directory: /media/Data/movies
filename: HD12.iso
How do i have to enter these command in the Terminal?
Should it looks like this: (from the example above)
cd movie/split-files tar -cvj /home/username/movie/large-files.avi | split -b 650m -d – “large-files.tar.bz.”
Can somebody help me, and post the correct command.
That would be very helpful!
Thanx!
First, create a folder call “spilt-files” in the Movies folder.
Enter the following command in the terminal:
cd ~/Movies/spilt-files
tar -cvj /media/Data/movies/HD12.iso | split -b 650m -d – “large-files.tar.bz.”
THX !!!