Difference between pages "Rsync Backup" and "Help talk:Funtoo Editing Guidelines"

(Difference between pages)
 
m (add console revision suggestion)
 
Line 1: Line 1:
== Introduction ==
+
== Fancy Boxes ==
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.
+
TODO: Describe fancy* boxes, and explain the most fool-proof way of using them. Use this format, exactly:
  
== Why SystemRescueCd? ==
+
{{fancyimportant|1=
The usage of SystemRescueCD is quite simple: it enables us to backup the contents of our entire OS.
+
Now you can put lots of funky stuff in here, like <tt>html</tt> tags, etc, and not
 +
have a problem with the parameter getting passed as the first parameter.
  
== Backing Up ==
+
Cool!
=== 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. }}
 
  
 +
== Console Revisions ==
 +
the console commands are strange and do not reflect the systems very well.  rolling up to a page id see # or $ as the major identifiers of root vs user and i would probably not notice.  i suggest they are changed to.
  
=== 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>
 
  
 +
<pre><console>##g##user $ ##b## test</console></pre><br />
  
== Restoring ==
+
<console>##g##user $ ##b## test</console><br />
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>
+
  
 +
<pre><console>##r##root $ ##b## tube</console></pre><br />
  
=== Mount partitions ===
+
<console>##r##root # ##b## tube</console>
<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.}}
+
  
 
+
to make it obvious as to what is going on.
=== 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 01:07, 16 March 2014

Fancy Boxes

TODO: Describe fancy* boxes, and explain the most fool-proof way of using them. Use this format, exactly:

Important

Now you can put lots of funky stuff in here, like html tags, etc, and not have a problem with the parameter getting passed as the first parameter.

Cool!


Console Revisions

the console commands are strange and do not reflect the systems very well. rolling up to a page id see # or $ as the major identifiers of root vs user and i would probably not notice. i suggest they are changed to.


<console>##g##user $ ##b## test</console>

user $  test

<console>##r##root $ ##b## tube</console>

root #  tube

to make it obvious as to what is going on.