0% found this document useful (0 votes)
62 views

Create Backups

Create Backups
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
62 views

Create Backups

Create Backups
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 9

Create Backups

Using Linux

Version 0.1 ● 12th May 2014

© 2014 Faisal Khan - www.FaysalKhan.org

licensed under the terms of the GNU Free Documentation License Version 1.3 or later
VERSION: 0.1 REVISION DATE: 5th May 2014
www.FaysalKhan.Org
Table Of Contents
Overview.................................................................................................................................. 1

Using 'tar'.................................................................................................................................. 2

Using 'gzip'............................................................................................................................... 4

tar............................................................................................................................................. 5

UnTar....................................................................................................................................... 5

zip............................................................................................................................................. 6

bzip2......................................................................................................................................... 6

Create Backups i
www.FaysalKhan.Org

Overview
Let's face it, computers aren't perfect. Linux is an "almost perfect" operating system, but things do
happen and data is sometimes lost. The best way to avoid problems is to backup your files. Linux
provides two key programs to do this: 'tar' and 'gzip'

Create Backups 1
www.FaysalKhan.Org

Using 'tar'
First we'll start with 'tar'. This program assembles various files into one package, commonly called
a "tarball". Let's say you have some files - notes that you've taken during this course.

You have:

notes_1.txt

notes_2.txt

notes_3.txt

notes_4.txt

notes_5.txt

and you've placed them in a directory called /linux_course. You want to back them up and keep
them on a usb Drive, let's say. You would type the following command to package them in a
tarball.

tar -cvf linux_notes.tar notes*.txt

First, you have tar, the name of the program. Then you have the options, c (--create) v (--
verbose-show what files they are) (f--file -make a file - should always be the last option) Then you
have the name of the file you want to create ( linux_notes.tar) and the files you want to backup
(notes*.txt).

This presupposes that you may have other files in the directory that you don't want to include. If
you want to include ALL files in a directory, just substitute notes*.txt for *.*.

If you've got good data storage capabilities (Jaz or Zip drives, a CD writer or a tape backup drive),
you might want to back up whole directories along with their corresponding subdirectories. Then
you would enter in the directory, let's say /home/bob/ and issue the command:

tar -cvf bob_backup.tar *

Create Backups 2
www.FaysalKhan.Org
With one asterisk, you will include directories and files without extensions (my_file as opposed to
my_file.txt). Be prepared to get a fairly voluminous tarball.

This is the first step in the backup process. Now let's look at the second step; the compression of
these files.

Create Backups 3
www.FaysalKhan.Org

Using 'gzip'
As we mentioned, 'tar' just assembles the files together into only one file. There is no reduction in
the size of these files (the tarball might even be bigger!) Now we would have to do one more thing
in order to reduce this file into a more manageable size: use 'gzip'.

gzip is the preferred compression tool for Linux. To reduce the size of your tar file, you would
issue the following command:

gzip your_tar_file.tar

and the tar file would be compressed. You can also compress a regular file using the same
command, but gzip is used primarily with tarballs.

The result would be a file like this: your_tar_file.tar.gz

The two file extensions show us that the file is a tarball and it is compressed with the 'gzip' format.
You can now proceed to store this as you see fit.

Create Backups 4
www.FaysalKhan.Org

Putting it all together

tar
tar has an option built into it to use 'gzip' to zip the file at the same time you make the tarball. If
you add z to the options, and change the name of the file to create to a .gz extension, you have
the whole shebang in one step. Our previous example would be modified to this:

tar -czvf bob_backup.tar.gz *

Remember f should always be the last option.

UnTar
Using 'tar' and 'gzip' sort of supposes that you're going to want to "untar" and "unzip" these files at
one point or another.

The easiest way for doing this is to use 'tar' for the whole process. You would locate the zipped
tarball in question and then ask yourself a question:

Did I make any changes to the files inside the tarball after I made it? If you did, then you've got an
old tarball. If you untarred it in the same directory, you'd overwrite the existing ones. If you would
like a copy of the old file, untar it in a different directory. If you don't want the old files, then you
should make a new tarball. It's pretty standard backup practice.

When you've decided what you want to do, to proceed with the "untarring", issue this command:

tar -zxvpf my_tar_file.tar.gz

I've used my preferred options. I'll explain them:

-z - unzip the file first

-x - extract the files from the tarball

-v - "verbose" (i.e tar tells you what files it's extracting)

Create Backups 5
www.FaysalKhan.Org
-p - preserves dates, permissions of the original files

-f - use the file in question (if you don't specify this, tar just sort of sits around doing nothing)

The files are extracted and your original tarball is preserved (my_tar_file.tar.gz).

You can also untar the file and then use gzip separately. Just leave the z option out of the
previous example and type:

gzip -d my_tar_file.tar.gz

or

gunzip my_tar_file.tar.gz

(gunzip runs gzip -d "automagically"!)

These commands are good if you've just zipped a regular file (not a tarball).

Other compression tools

zip
Most Linux distributions come with other tools to compress files. One of these is zip, famous in
the MS-DOS/Windows world. If you're planning on compressing files to give to someone who
(still) uses the Windows operating system, this might be your best bet. You can also use unzip if
someone gives you a file compressed with 'zip'. Consult the man file ( man zip) for specific
instructions on using this tool.

bzip2

There is also another tool that is rapidly gaining acceptance in the Linux world: bzip2. As a matter
of fact, the Linux kernel source package, usually comes "bzipped". When you compile a kernel
(create a custom kernel for yourself from source) there is an option to create a bzipped kernel.
This is supposed to become the official way of doing it in the near future, so it may be a good idea
to get to know 'bzip2'

Create Backups 6

You might also like