Difference between revisions of "Rsync Backup"

(Created page with "== Introduction ==This tutorial leads you through the process of backuping and restoring your OS. This process is completed using the <code>rsync</code> tool that is included ...")
 
Line 1: Line 1:
== Introduction ==This tutorial leads you through the process of backuping and restoring your OS. This process is completed using the <code>rsync</code> tool that is included in SystemRescueCd.== Why SystemRescueCd ==The usage of SystemRescueCD is quite simple: it enables us to backup the contents of our entire OS.== Backing Up ===== Preparation ===By default SystemRescueCd provides a <tt>/mnt/backup</tt> mount point. We will use this. There is no mount point for Funtoo. We have to create one:<console>###i## install -d /mnt/funtoo</console>When you use SystemRescueCd to backup you OS for the first time, you also have to create mount points for additional partitions. In this tutorial we assume that there is a <tt>/boot</tt> and a <tt>/home</tt> partition. Create the directories in <tt>/mnt/funtoo</tt>: <console>###i## install -d /mnt/funtoo/boot###i## install -d /mnt/funtoo/home</console>We also assume that we are backing up a sytem to an external drive. Plug in the USB device and power it on.<console>###i## cat /proc/partitionsmajor minor  #blocks  name   8        0  488386584 sda   8        1    512000 sda1   8        2      32768 sda2   8        3    2097152 sda3   8        4  52428800 sda4   8        5  433314823 sda5   8       16  488386584 sdb  11        0    1048575 sr0   8      48  488386584 sdd  8      49  229032928 sdd1   8      52          1 sdd4   8      53  259352576 sdd5</console>The above command helps you to determine the device name. Lets's suppose that your backup device is <tt>/dev/sdd1</tt>. Mount the device now - along with your Funtoo partitions.<console>###i## mount /dev/sdd1 /mnt/backup###i## mount /dev/sda4 /mnt/funtoo###i## mount /dev/sda5 /mnt/funtoo/home###i## mount /dev/sda1 /mnt/funtoo/boot</console>=== Backup ===Now, we backup our Funtoo partition:<console>###i## rsync -aHA --del --force --stats --progress /mnt/funtoo /mnt/backup</console>=== Snapshot ===Once this command has completed, you can create a snapshot. Create a snapshot folder if there is none:<console>###i## install -d /mnt/backup/snapshot</console>Give your snapshot copy a name that includes the date. Thus, you may keep as many snapshot copies as you want and use one of those copies to restore your system to its state at any given date:<console>###i## cp -al /mnt/backup/funtoo /mnt/backup/snaphot/snap-2K014B26-a</console>{{fancynote| In our example, the name of the snapshot tells us that it was created on February 26th (B26) 2014 and it is the first one (a) made on that date. }}=== Log of backups ===Logging backups is not mandatory but could be useful. Create a log file and add a descriptive yet short record for each of your backup. Here is an example:<pre>Date                File                  Description-----------------    --------------------  ----------------------------------------------------------Feb 26th 2014        snap-2K014B26-a      Backup after system update :                                             - New kernel installed</pre>== Restoring ==First, you have to boot the PC with SystemRescueCd. When you are ready to go, create and format partitions as per [[Funtoo_Linux_Installation#Prepare_Hard_Disk|installation guide]]. For sake of brevity we assume that we are restoring the <tt>/boot</tt>, <tt>/</tt> and <tt>/home</tt> partitions. First, you must create a mount point for Funtoo:<console>###i## install -d /mnt/funtoo</console>=== Mount partitions ===<console>###i## mount /dev/sdd1 /mnt/backup###i## mount /dev/sda4 /mnt/funtoo###i## mount /dev/sda5 /mnt/home###i## mount /dev/sda1 /mntboot</console>{{fancywarning|If <tt>/home</tt> and <tt>/boot</tt> fail to mount, simply create mount points and run mount commands anew.}}=== Restoring from latest backup ===<console>###i## rsync -aHA --del --force --stats --progress /mnt/backup/funtoo/ /mnt/funtoo</console>{{fancyimportant|Note the <tt>/</tt> at the end of <code>/mnt/backup/funtoo/</code>. It is mandatory -- not a typo.}}=== Restoring from a previous backup ===<console>###i## rsync -aHA --del --force --stats --progress /mnt/backup/snapshot/snap-2K014B26-a/ /mnt/funtoo</console>{{fancyimportant|Note the '''<tt>/</tt>''' at the end of <code>/mnt/backup/snapshot/snap-2K014B26-a/</code>. It is mandatory -- not a typo.}}=== Restoring GRUB2 ===Once the system has been restored, GRUB2 must be reinstalled. The example below is for a GRUB/Bios partition schema. This assumes that the Funtoo partitions were created on <tt>/dev/sda</tt>:<console>###i## cd /mnt/funtoo###i## mount -t proc none proc###i## mount -o bind /dev dev###i## mount -o bind /sys sys###i## swapon /dev/sda3###i## cp /etc/resolv.conf etc###i## env -i HOME=/root TERM=$TERM chroot . bash -l###i## grub-install /dev/sda</console>{{fancywarning|If, for any reason, partitions were not created on the same devices -- (let's say they were moved from <tt>/dev/sda</tt> to <tt>/dev/sdb</tt>) -- please amend <code>/etc/boot.conf</code> and <code>/etc/fstab</code> accordingly before running <code>boot-update</code>.}}<console>###i## boot-update</console>You're done. Unmount partitions and reboot.== Credit ==This is an as-is translation by Guy Fontaine (AKA Aramis_qc) of an original French tutorial written by Sylvain Alain (AKA d2_racing). Some parts were reviewed and modified to reflect Funto GNU/Linux instead of Gentoo GNU/Linux. [[Category:HOWTO]]
+
== Introduction ==
 +
This tutorial leads you through the process of backing up and restoring your OS. This process is completed using the <code>rsync</code> tool that is included in SystemRescueCd.
 +
 
 +
== Why SystemRescueCd? ==
 +
The usage of SystemRescueCD is quite simple: it enables us to backup the contents of our entire OS.
 +
 
 +
== Backing Up ==
 +
=== Preparation ===
 +
By default, SystemRescueCd provides a <tt>/mnt/backup</tt> mount point. We will use this. There is no mount point for Funtoo. We have to create one:
 +
<console>
 +
###i## install -d /mnt/funtoo
 +
</console>
 +
When you use SystemRescueCd to backup you OS for the first time, you also have to create mount points for additional partitions. In this tutorial we assume that there is a <tt>/boot</tt> and a <tt>/home</tt> partition. Create the directories in <tt>/mnt/funtoo</tt>:  
 +
<console>
 +
###i## install -d /mnt/funtoo/boot###i## install -d /mnt/funtoo/home
 +
</console>
 +
We also assume that we are backing up a sytem to an external drive. Plug in the USB device and power it on.
 +
<console>###i## cat /proc/partitions
 +
major minor  #blocks  name
 +
8        0  488386584 sda  
 +
8        1    512000 sda1  
 +
8        2      32768 sda2
 +
8        3    2097152 sda3
 +
8        4  52428800 sda4
 +
8        5  433314823 sda5
 +
8       16  488386584 sdb  
 +
  11        0    1048575 sr0
 +
8      48  488386584 sdd   
 +
8      49  229032928 sdd1
 +
8      52          1 sdd4
 +
8      53  259352576 sdd5
 +
</console>
 +
 
 +
The above command helps you to determine the device name. Lets's suppose that your backup device is <tt>/dev/sdd1</tt>. Mount the device now - along with your Funtoo partitions.
 +
<console>
 +
###i## mount /dev/sdd1 /mnt/backup
 +
###i## mount /dev/sda4 /mnt/funtoo
 +
###i## mount /dev/sda5 /mnt/funtoo/home
 +
###i## mount /dev/sda1 /mnt/funtoo/boot
 +
</console>
 +
 
 +
=== Backup ===
 +
Now, we backup our Funtoo partition:
 +
<console>
 +
###i## rsync -aHA --del --force --stats --progress /mnt/funtoo /mnt/backup
 +
</console>
 +
 
 +
=== Snapshot ===
 +
Once this command has completed, you can create a snapshot. Create a snapshot folder if there is none:
 +
<console>
 +
###i## install -d /mnt/backup/snapshot
 +
</console>
 +
Give your snapshot copy a name that includes the date. Therefore, you may keep as many snapshot copies as you want and use one of those copies to restore your system to its state at any given date:
 +
<console>
 +
###i## cp -al /mnt/backup/funtoo /mnt/backup/snaphot/snap-2K014B26-a
 +
</console>
 +
{{fancynote| In our example, the name of the snapshot tells us that it was created on February 26th (B26) 2014 and it is the first one (a) made on that date. }}
 +
 
 +
 
 +
=== Log of backups ===
 +
Logging backups is not mandatory but can be useful. Create a log file and add a descriptive, yet short record for each of your backup. Here is an example:
 +
<pre>
 +
Date                File                  Description
 +
-----------------    --------------------  ----------------------------------------------------------
 +
Feb 26th 2014        snap-2K014B26-a      Backup after system update :                                          
 +
                                            - New kernel installed
 +
</pre>
 +
 
 +
 
 +
== Restoring ==
 +
First, you have to boot your PC with SystemRescueCd. Next, create and format partitions as per [[Funtoo_Linux_Installation#Prepare_Hard_Disk|installation guide]].
 +
For the sake of brevity, we assume that we are restoring the <tt>/boot</tt>, <tt>/</tt> and <tt>/home</tt> partitions. First, you must create a mount point for Funtoo:
 +
<console>
 +
###i## install -d /mnt/funtoo
 +
</console>
 +
 
 +
 
 +
=== Mount partitions ===
 +
<console>
 +
###i## mount /dev/sdd1 /mnt/backup
 +
###i## mount /dev/sda4 /mnt/funtoo
 +
###i## mount /dev/sda5 /mnt/home
 +
###i## mount /dev/sda1 /mntboot
 +
</console>
 +
{{fancywarning|If <tt>/home</tt> and <tt>/boot</tt> fail to mount, simply create the appropriate mount points and run the mount commands again.}}
 +
 
 +
 
 +
=== Restoring from latest backup ===
 +
<console>
 +
###i## rsync -aHA --del --force --stats --progress /mnt/backup/funtoo/ /mnt/funtoo
 +
</console>
 +
{{fancynote| The <tt>/</tt> at the end of <code>/mnt/backup/funtoo/</code> is mandatory -- not a typo.}}
 +
 
 +
 
 +
=== Restoring from a previous backup ===
 +
<console>
 +
###i## rsync -aHA --del --force --stats --progress /mnt/backup/snapshot/snap-2K014B26-a/ /mnt/funtoo
 +
</console>
 +
{{fancynote| The '''<tt>/</tt>''' at the end of <code>/mnt/backup/snapshot/snap-2K014B26-a/</code> is mandatory -- not a typo.}}
 +
 
 +
 
 +
=== Restoring GRUB2 ===
 +
Once the system has been restored, GRUB2 must be reinstalled. The example below is for a GRUB/Bios partition schema. This assumes that the Funtoo partitions were created on <tt>/dev/sda</tt>:
 +
<console>
 +
###i## cd /mnt/funtoo
 +
###i## mount -t proc none proc
 +
###i## mount -o bind /dev dev
 +
###i## mount -o bind /sys sys
 +
###i## swapon /dev/sda3
 +
###i## cp /etc/resolv.conf etc
 +
###i## env -i HOME=/root TERM=$TERM chroot . bash -l
 +
###i## grub-install /dev/sda
 +
</console>
 +
{{fancywarning|If, for some reason, the partitions were not created on the same devices -- (let's say they were moved from <tt>/dev/sda</tt> to <tt>/dev/sdb</tt>) -- please amend <code>/etc/boot.conf</code> and <code>/etc/fstab</code> accordingly before running <code>boot-update</code>.}}
 +
<console>
 +
###i## boot-update
 +
</console>
 +
You're done. Unmount partitions and reboot.
 +
 
 +
 
 +
== Credit ==
 +
This is an as-is translation by Guy Fontaine (AKA Aramis_qc) of an original French tutorial written by Sylvain Alain (AKA d2_racing). Some parts were reviewed and modified to reflect Funto GNU/Linux instead of Gentoo GNU/Linux.  
 +
 
 +
 
 +
[[Category:HOWTO]]

Revision as of 15:44, 2 March 2014

Introduction

This tutorial leads you through the process of backing up and restoring your OS. This process is completed using the rsync tool that is included in SystemRescueCd.

Why SystemRescueCd?

The usage of SystemRescueCD is quite simple: it enables us to backup the contents of our entire OS.

Backing Up

Preparation

By default, SystemRescueCd provides a /mnt/backup mount point. We will use this. There is no mount point for Funtoo. We have to create one:

# install -d /mnt/funtoo

When you use SystemRescueCd to backup you OS for the first time, you also have to create mount points for additional partitions. In this tutorial we assume that there is a /boot and a /home partition. Create the directories in /mnt/funtoo:

# install -d /mnt/funtoo/boot###i## install -d /mnt/funtoo/home

We also assume that we are backing up a sytem to an external drive. Plug in the USB device and power it on.

# cat /proc/partitions
major minor  #blocks  name  
 8        0  488386584 sda 
 8        1     512000 sda1 
 8        2      32768 sda2  
 8        3    2097152 sda3  
 8        4   52428800 sda4  
 8        5  433314823 sda5  
 8        16  488386584 sdb 
 11        0    1048575 sr0  
 8       48  488386584 sdd   
 8       49  229032928 sdd1  
 8       52          1 sdd4  
 8       53  259352576 sdd5

The above command helps you to determine the device name. Lets's suppose that your backup device is /dev/sdd1. Mount the device now - along with your Funtoo partitions.

# mount /dev/sdd1 /mnt/backup
# mount /dev/sda4 /mnt/funtoo
# mount /dev/sda5 /mnt/funtoo/home
# mount /dev/sda1 /mnt/funtoo/boot

Backup

Now, we backup our Funtoo partition:

# rsync -aHA --del --force --stats --progress /mnt/funtoo /mnt/backup

Snapshot

Once this command has completed, you can create a snapshot. Create a snapshot folder if there is none:

# install -d /mnt/backup/snapshot

Give your snapshot copy a name that includes the date. Therefore, you may keep as many snapshot copies as you want and use one of those copies to restore your system to its state at any given date:

# cp -al /mnt/backup/funtoo /mnt/backup/snaphot/snap-2K014B26-a

Note

In our example, the name of the snapshot tells us that it was created on February 26th (B26) 2014 and it is the first one (a) made on that date. 


Log of backups

Logging backups is not mandatory but can be useful. Create a log file and add a descriptive, yet short record for each of your backup. Here is an example:

Date                 File                  Description
-----------------    --------------------  ----------------------------------------------------------
Feb 26th 2014        snap-2K014B26-a       Backup after system update :                                            
                                             - New kernel installed


Restoring

First, you have to boot your PC with SystemRescueCd. Next, create and format partitions as per installation guide. For the sake of brevity, we assume that we are restoring the /boot, / and /home partitions. First, you must create a mount point for Funtoo:

# install -d /mnt/funtoo


Mount partitions

# mount /dev/sdd1 /mnt/backup
# mount /dev/sda4 /mnt/funtoo
# mount /dev/sda5 /mnt/home
# mount /dev/sda1 /mntboot

Warning

If /home and /boot fail to mount, simply create the appropriate mount points and run the mount commands again.


Restoring from latest backup

# rsync -aHA --del --force --stats --progress /mnt/backup/funtoo/ /mnt/funtoo

Note

The / at the end of /mnt/backup/funtoo/ is mandatory -- not a typo.


Restoring from a previous backup

# rsync -aHA --del --force --stats --progress /mnt/backup/snapshot/snap-2K014B26-a/ /mnt/funtoo

Note

The / at the end of /mnt/backup/snapshot/snap-2K014B26-a/ is mandatory -- not a typo.


Restoring GRUB2

Once the system has been restored, GRUB2 must be reinstalled. The example below is for a GRUB/Bios partition schema. This assumes that the Funtoo partitions were created on /dev/sda:

# cd /mnt/funtoo
# mount -t proc none proc
# mount -o bind /dev dev
# mount -o bind /sys sys
# swapon /dev/sda3
# cp /etc/resolv.conf etc
# env -i HOME=/root TERM=$TERM chroot . bash -l
# grub-install /dev/sda

Warning

If, for some reason, the partitions were not created on the same devices -- (let's say they were moved from /dev/sda to /dev/sdb) -- please amend /etc/boot.conf and /etc/fstab accordingly before running boot-update.

# boot-update

You're done. Unmount partitions and reboot.


Credit

This is an as-is translation by Guy Fontaine (AKA Aramis_qc) of an original French tutorial written by Sylvain Alain (AKA d2_racing). Some parts were reviewed and modified to reflect Funto GNU/Linux instead of Gentoo GNU/Linux.