Backup: Difference between revisions

From OLPC
Jump to navigation Jump to search
m (moved How to backup your XO to Backup: page title unnecessarily complex)
No edit summary
 
(8 intermediate revisions by 2 users not shown)
Line 1: Line 1:
''In information technology, a backup or the process of backing up is making copies of data which may be used to restore the original after a data loss event.'' -- [http://en.wikipedia.org/wiki/Backup Wikipedia:Backup]

Here we describe backup for the OLPC XO, from an individual standpoint. For school based backup solutions, refer to the School Server.

An XO internal storage contains:
An XO internal storage contains:
* your Sugar Journal,
* an operating system,
* your GNOME files,
* the Sugar environment,
* the Sugar activities installed,
* your Journal,
* your GNOME files.
* the GNOME, Sugar and Linux operating system.


To backup and restore your Journal, either drag and drop entries to a USB drive, or use the Sugar [http://activities.sugarlabs.org/en-US/sugar/addon/4326 Backup] and [http://activities.sugarlabs.org/en-US/sugar/addon/4327 Restore] activities available in the [http://activities.sugarlabs.org//en-US/sugar/ Sugar Activity Library].
To backup and restore your Journal only, either drag and drop entries to a [[USB drive]], or use the Sugar [http://activities.sugarlabs.org/en-US/sugar/addon/4326 Backup] and [http://activities.sugarlabs.org/en-US/sugar/addon/4327 Restore] activities available from the [http://activities.sugarlabs.org/ Sugar Activity Library].


To backup and restore your GNOME files, drag and drop with a USB drive.
To backup and restore your GNOME files only, drag and drop to a USB drive.


To backup the operating system, Sugar environment, Journal and GNOME files, use this page. By making a backup of everything on the XO, you can later restore to recover from a mistake or disaster.
To backup everything on the internal storage, use this page. This is called a full backup, or an image backup. By making a backup of everything on the XO, you can later restore to recover from a mistake or disaster. However, everything changed since the last full backup is lost.


Backup is also useful for testing of different software builds; make a backup, test the other build, restore the backup.
Backup is also useful for testing of different software builds; make a backup, test the other build, restore the backup.


Backup is not an easy method for cloning, because there are unwelcome [[Imaging/Side_effects|side effects]] of restoring a backup on another laptop.
Backup is not an easy method for cloning, because there are unwelcome [[Imaging/Side_effects|side effects]] of restoring a backup on another laptop.

Backup is not an easy method for reversion to as-installed state, because it is so slow compared to the alternatives. See [[Tiny_Core_Linux/Reversion|Reversion]].


XO internal storage has changed over time, to keep costs down. There are sections below depending on what model of XO you have:
XO internal storage has changed over time, to keep costs down. There are sections below depending on what model of XO you have:


* [[#XO_1|XO-1]],
* [[#XO_1|XO-1]],
* [[#XO_1.5|XO-1.5]].
* [[#XO-1.5.2C_XO-1.75_and_XO-4XO_1.5|XO-1.5, XO-1.75 and XO-4]].

There is no documentation here yet for XO-1.75 backup.


= XO-1 =
= XO-1 =


== Ingredients ==
The internal storage of an XO-1 is 1GB of non-removable NAND Flash memory.

=== Preparation ===


You will need:
You will need:
* an XO-1 laptop to be backed up,
* an unsecured XO-1 laptop to be backed up, (if your laptop is secured, get a [[Developer key]] and disable security),
* a [[USB drive]] with at least 1GB free space,
* a [[USB drive]] with at least 1GB free space,
* from 10 minutes to 3 hours.
* if your laptop is secured, a [[Developer key]],
* from 10 minutes to 3 hours (depending on your luck and skill).


=== Backup ===
== Recipe - Backup ==


To make an image backup:
Some of these steps are optional, included to boost reliability and confidence. Press the [enter] key after typing commands at the 'ok' prompt.


# Reflash to [[OLPC_Firmware_q2f05|Q2F05]] or later, for the best USB support,
* [[Upgrading_firmware|Upgrade the firmware]], for the best USB support,
# Ensure the USB drive is formatted as FAT or FAT32 or VFAT. Factory-formatted devices are apparently preferred or least troublesome.
* Ensure the USB drive is formatted as FAT or FAT32. Factory-formatted devices are least troublesome.
# Ensure there is at least 1 GB (1024 MB) of free space available on the USB drive.
* Ensure there is at least 1 GB of free space available on the USB drive.
# Insert your USB drive into one of the USB ports on the XO.
* Insert your USB drive into one of the USB ports on the XO.
* Start your XO, and get to the [[Ok]] prompt, then type:
# Start or restart your XO, while holding down the (X) Escape key at upper-left of the keyboard. This should get you to the OpenFirmware [[Ok prompt]]. (This won't work if the laptop is secured)
save-nand u:\backup.img
# (optional) At the OFW 'ok' prompt, type: <tt>probe-usb</tt>
* Wait anywhere from a few minutes to a few hours as the XO copies its internal storage over to the USB drive. A graphical display of blocks will be shown, with the current block indicated. Below the blocks is a hexadecimal block count, which will count from 0 to no more than 1FFF, at a varying speed. When finished it will report 'Done' and report the name of a CRC file such as 'backup.crc'.
# (optional) Ensure your USB drive shows up as a USB2 device. USB1 is too slow. (Compare the output of <tt>probe-usb</tt> with and without the USB drive plugged in.)
* Remove the USB drive. Your backup is now complete.
# (optional) Type: <tt>disk-free u:</tt> to see if there is enough free space. A full XO-1 requires 1 GB space on the USB drive. A half-full XO-1 requires about 500 MB. You can estimate that amount of space you need by typing <tt>scan-nand</tt> and looking at the relative percentage of green (used) vs. blue (unused) squares. If you need to free up some space on the USB drive, you can delete files from OFW with, for example, <tt>rm u:\myfile.xyz</tt>. You can also use wildcards, as in <tt>rm u:\*.img</tt>
* You may copy the two files 'backup.img' and 'backup.crc' from the USB drive onto some other media, such as another computer, for redundant backup or to free your USB drive for other uses. Always keep the two files together.
# Type: <tt>save-nand u:\backup.img</tt><br>(The filename 'backup.img' may be something else such as 'my759bak.img'; use a short 8.3 format filename, and stay with the .img extension.)
# Wait anywhere from a few minutes to a few hours as the XO copies its internal storage over to the USB drive. A graphical display of blocks will be shown, with the current block indicated. Below the blocks is a hexadecimal block count, which will count from 0 to no more than 1FFF, at a varying speed. When finished OFW will report 'Done' and report the name of a CRC file such as 'backup.crc'.
# Type: <tt>dir u:</tt> (if you wish to see the final contents of USB drive).
# Remove the USB drive. Your backup is now complete.
# You may copy the two files 'backup.img' and 'backup.crc' from the USB drive onto some other media, such as another computer, for redundant backup or to free your USB drive for other uses. Always keep the two files together.


=== Restore ===
== Recipe - Restore ==


Warning: restoring a full backup erases everything that is on the XO, restoring it to the state it had when the full backup was made.
Warning: restoring a full backup erases everything that is on the XO, restoring it to the state it had when the full backup was made.


* Insert your USB drive into one of the USB ports on the XO.
# Start your XO, while holding down the (X) Escape key at upper-left of the keyboard. This should get you to the OpenFirmware '[[ok]]' prompt.
# Insert your USB drive into one of the USB ports on the XO.
* Start your XO, and get to the [[Ok]] prompt, then type:
copy-nand u:\backup.img
# At the OFW 'ok' prompt, type: <tt>probe-usb</tt>
* Wait until done, then remove the USB drive, then restart your XO!
# Ensure your USB drive shows up as a USB2 device. USB1 is too slow.
# Type: <tt>dir u:</tt>
# Verify that your desired '.img' and '.crc' files are there.
# Type: <tt>copy-nand u:\backup.img</tt>
# Wait until done, then remove the USB drive, then restart your XO!


=== Notes ===
== Notes ==


This procedure becomes easy after you have done it 3 times.
This procedure becomes easy after you have done it three times.


Some USB drives work better than others. USB hard drives are the best. USB Flash drives vary considerably, across brands and based on age. Backups in the 10-minute range for half-full XO's are achievable. If save-nand is too slow, then try a different USB drive. Default factory-formatted USB Flash drives are reported to work better than devices that have been reformatted, for example by a Windows PC. If you have a USB Flash drive that is working well with your XO, try to avoid ever reformatting it; delete files using file delete commands rather than device format commands. FAT filesystems with large cluster sizes (like 16 KiB) are particularly efficient for this purpose. (Don't use ext2 filesystems if your OFW version is Q2E15 or earlier; the OFW write support for ext2 in those versions is buggy and inefficient.)
Some USB drives work better than others. USB hard drives are the best. USB flash drives vary considerably, across brands and based on age. Backups in the 10-minute range for half-full XO's are achievable. If save-nand is too slow, then try a different USB drive. Default factory-formatted USB flash drives are reported to work better than devices that have been reformatted. If you have a USB flash drive that is working well with your XO, try to avoid ever reformatting it; delete files using file delete commands rather than device format commands. FAT filesystems with large cluster sizes (like 16 KiB) are particularly efficient for this purpose.


There are variations possible, for example using an SD flash memory device (use sd: instead of u: for the OFW commands). But a USB drive will generally be more convenient.
There are variations possible, for example using an SD card (use sd: instead of u: for the OFW commands). But a USB drive is usually more convenient.


Accessing individual files from a backup.img file generally requires you to restore the entire backup to your XO. Albeit complicated, you could also access individual files using the procedure described on the [[Image forensics]] page, to mount your image and recover individual files.
Accessing individual files from a backup.img file generally requires you to restore the entire backup to your XO. Albeit complicated, you could also access individual files using the procedure described on the [[Image forensics]] page, to mount your image and recover individual files.


OpenFirmware is designed to be simple, reliable, and powerful, but not idiot-proof. Using the recipe given above will usually work well. Deviations could make trouble or confusion unless you know what you are doing. You have been warned!
Open Firmware is designed to be simple, reliable, and powerful, but not idiot-proof. Using the recipe given above will usually work well. Deviations could make trouble or confusion unless you know what you are doing. You have been warned!


=== Another approach ===
== Timings ==

Made with Q2F05.

* USB hard drive, ''save-nand'', 177sec,
* USB hard drive, ''copy-nand'', 245sec,

== Another approach ==
You can boot a different [[:Category:Linux distributions|Linux distribution]] from a USB drive, mount the XO-1's NAND file system, then use a backup utility such as the '''tar''' command to back up its files.
You can boot a different [[:Category:Linux distributions|Linux distribution]] from a USB drive, mount the XO-1's NAND file system, then use a backup utility such as the '''tar''' command to back up its files.


This is similar to what the xo-backup command in the XO version of [[Tiny Core Linux]] does, although that is specific to the [[#XO-1.5]].
This is similar to what the xo-backup command in the XO version of [[Tiny Core Linux]] does, and this is described in the next section.


= XO-1.5 =
= XO-1.5, XO-1.75 and XO-4 =


An image backup and restore can be done using the [[Firmware/Storage|fs-save and fs-load commands]] but these are very slow.
The January 2011 release of the XO-1.5 [[Tiny_Core_Linux|Tiny Core Linux build]] contains three scripts for backup and restore.


The [[Tiny_Core_Linux|Tiny Core Linux build]] contains three scripts for backup and restore. These are described below.
== Disable Security ==


== Ingredients ==
Most XO-1.5 laptops have security disabled by default. This procedure requires security to be disabled.

You will need:
* an unsecured laptop to be backed up, (if your laptop is secured, get a [[Developer key]] and disable security),
* a [[USB drive]] with enough free space for the backup,
* from 10 minutes to 1 hour.


== Prepare USB drive ==
== Prepare USB drive ==


*select a USB drive of at least 128 MB, which will contain Tiny Core Linux,
*select a USB drive of at least 128 MB, which will contain Tiny Core Linux,
*[[Tiny_Core_Linux|download and install Tiny Core Linux]] on the USB drive,

*download [http://dev.laptop.org/~quozl/tinycore/microcore-3.4-xo-1.5-2011-01-06.tar microcore-3.4-xo-1.5-2011-01-06.tar] (10 MB) to a USB drive and expand it. See [[Tiny_Core_Linux|detailed instructions]] if you need more.

That's it. You can delete the .tar file if you don't need to keep it. You will see a folder ''boot'' with three files; ''vmlinuz'', ''initrd'', and ''olpc.fth''. OpenFirmware reads the ''olpc.fth'' file when the laptop turns on, and this file directs it to load ''vmlinuz'' and ''initrd'', which contain the rest of Tiny Core Linux.


== Shutdown ==
== Shutdown ==
Line 105: Line 107:


*insert the USB drive into the laptop,
*insert the USB drive into the laptop,

*start the laptop, you will see a white screen, then a black screen with a penguin, then a prompt;
*start the laptop, you will see a white screen, then a black screen with a penguin, then a prompt;

root@box:~#
root@box:~#

At this point you may remove the USB drive if you do not need it for the next step.
At this point you may remove the USB drive if you do not need it for the next step.


== Backup ==
== Backup ==


*insert a USB drive of at least 4 GB capacity, (the backup should not be larger than the size of the internal microSD card, which in most cases is 4 GB, but may be as small as 1.4 GB if there is very little added content or activities on the laptop),
*insert a USB drive of at least 4 GB capacity, (the backup should not be larger than the size of the internal storage, which in most cases is 4 GB, but may be as small as 1.4 GB if there is very little added content or activities on the laptop),

*start the backup by typing ''xo-backup'' then press enter;
*start the backup by typing ''xo-backup'' then press enter;

root@box:~# xo-backup
root@box:~# xo-backup
ok
ok
root@box:~#
root@box:~#

*when the ''ok'' is displayed, it means the backup has completed properly.
*when the ''ok'' is displayed, it means the backup has completed properly.


Line 130: Line 126:
== Restore ==
== Restore ==


'''WARNING: this destroys all data on the internal microSD card.'''
'''WARNING: this destroys all data on the internal storage.'''


*either leave the USB drive in place, or insert another USB drive instead, one with an ''xo.tar'' file on it from the backup step above,
*either leave the USB drive in place, or insert another USB drive instead, one with an ''xo.tar'' file on it from the backup step above,

*start the restore by typing ''xo-restore'' then press enter;
*start the restore by typing ''xo-restore'' then press enter;

root@box:~# xo-restore
root@box:~# xo-restore
ok
ok
root@box:~#
root@box:~#

*when the ''ok'' is displayed, it means the restore has completed properly.
*when the ''ok'' is displayed, it means the restore has completed properly.


It usually takes between 22 and 40 minutes to restore, depending on the size of the backup, and the speed of the microSD card. The microSD card is usually much slower at writing than reading.
It usually takes between 22 and 40 minutes to restore, depending on the size of the backup, and the speed of the internal storage, which is usually much slower at writing than reading.


== Repartition and Restore ==
== Repartition and Restore ==


'''WARNING: this destroys all data on the internal microSD card.'''
'''WARNING: this destroys all data on the internal storage.'''

This creates the partition table again on the microSD card. This should only be necessary if the partition table on the microSD card is incorrect. Do this before ''xo-restore''. Like so:


This creates the partition table again on the internal storage. This should only be necessary if the partition table on the internal storage is incorrect. Do this before ''xo-restore''. Like so:
root@box:~# xo-repart
root@box:~# xo-repart
ok
ok

Latest revision as of 06:23, 20 August 2013

In information technology, a backup or the process of backing up is making copies of data which may be used to restore the original after a data loss event. -- Wikipedia:Backup

Here we describe backup for the OLPC XO, from an individual standpoint. For school based backup solutions, refer to the School Server.

An XO internal storage contains:

  • your Sugar Journal,
  • your GNOME files,
  • the Sugar activities installed,
  • the GNOME, Sugar and Linux operating system.

To backup and restore your Journal only, either drag and drop entries to a USB drive, or use the Sugar Backup and Restore activities available from the Sugar Activity Library.

To backup and restore your GNOME files only, drag and drop to a USB drive.

To backup everything on the internal storage, use this page. This is called a full backup, or an image backup. By making a backup of everything on the XO, you can later restore to recover from a mistake or disaster. However, everything changed since the last full backup is lost.

Backup is also useful for testing of different software builds; make a backup, test the other build, restore the backup.

Backup is not an easy method for cloning, because there are unwelcome side effects of restoring a backup on another laptop.

Backup is not an easy method for reversion to as-installed state, because it is so slow compared to the alternatives. See Reversion.

XO internal storage has changed over time, to keep costs down. There are sections below depending on what model of XO you have:

XO-1

Ingredients

You will need:

  • an unsecured XO-1 laptop to be backed up, (if your laptop is secured, get a Developer key and disable security),
  • a USB drive with at least 1GB free space,
  • from 10 minutes to 3 hours.

Recipe - Backup

To make an image backup:

  • Upgrade the firmware, for the best USB support,
  • Ensure the USB drive is formatted as FAT or FAT32. Factory-formatted devices are least troublesome.
  • Ensure there is at least 1 GB of free space available on the USB drive.
  • Insert your USB drive into one of the USB ports on the XO.
  • Start your XO, and get to the Ok prompt, then type:
save-nand  u:\backup.img
  • Wait anywhere from a few minutes to a few hours as the XO copies its internal storage over to the USB drive. A graphical display of blocks will be shown, with the current block indicated. Below the blocks is a hexadecimal block count, which will count from 0 to no more than 1FFF, at a varying speed. When finished it will report 'Done' and report the name of a CRC file such as 'backup.crc'.
  • Remove the USB drive. Your backup is now complete.
  • You may copy the two files 'backup.img' and 'backup.crc' from the USB drive onto some other media, such as another computer, for redundant backup or to free your USB drive for other uses. Always keep the two files together.

Recipe - Restore

Warning: restoring a full backup erases everything that is on the XO, restoring it to the state it had when the full backup was made.

  • Insert your USB drive into one of the USB ports on the XO.
  • Start your XO, and get to the Ok prompt, then type:
copy-nand u:\backup.img
  • Wait until done, then remove the USB drive, then restart your XO!

Notes

This procedure becomes easy after you have done it three times.

Some USB drives work better than others. USB hard drives are the best. USB flash drives vary considerably, across brands and based on age. Backups in the 10-minute range for half-full XO's are achievable. If save-nand is too slow, then try a different USB drive. Default factory-formatted USB flash drives are reported to work better than devices that have been reformatted. If you have a USB flash drive that is working well with your XO, try to avoid ever reformatting it; delete files using file delete commands rather than device format commands. FAT filesystems with large cluster sizes (like 16 KiB) are particularly efficient for this purpose.

There are variations possible, for example using an SD card (use sd: instead of u: for the OFW commands). But a USB drive is usually more convenient.

Accessing individual files from a backup.img file generally requires you to restore the entire backup to your XO. Albeit complicated, you could also access individual files using the procedure described on the Image forensics page, to mount your image and recover individual files.

Open Firmware is designed to be simple, reliable, and powerful, but not idiot-proof. Using the recipe given above will usually work well. Deviations could make trouble or confusion unless you know what you are doing. You have been warned!

Timings

Made with Q2F05.

  • USB hard drive, save-nand, 177sec,
  • USB hard drive, copy-nand, 245sec,

Another approach

You can boot a different Linux distribution from a USB drive, mount the XO-1's NAND file system, then use a backup utility such as the tar command to back up its files.

This is similar to what the xo-backup command in the XO version of Tiny Core Linux does, and this is described in the next section.

XO-1.5, XO-1.75 and XO-4

An image backup and restore can be done using the fs-save and fs-load commands but these are very slow.

The Tiny Core Linux build contains three scripts for backup and restore. These are described below.

Ingredients

You will need:

  • an unsecured laptop to be backed up, (if your laptop is secured, get a Developer key and disable security),
  • a USB drive with enough free space for the backup,
  • from 10 minutes to 1 hour.

Prepare USB drive

Shutdown

Shutdown the laptop in the usual way. This is so that it can be booted from the USB drive.

Start Tiny Core Linux

  • insert the USB drive into the laptop,
  • start the laptop, you will see a white screen, then a black screen with a penguin, then a prompt;
root@box:~# 

At this point you may remove the USB drive if you do not need it for the next step.

Backup

  • insert a USB drive of at least 4 GB capacity, (the backup should not be larger than the size of the internal storage, which in most cases is 4 GB, but may be as small as 1.4 GB if there is very little added content or activities on the laptop),
  • start the backup by typing xo-backup then press enter;
root@box:~# xo-backup
ok
root@box:~# 
  • when the ok is displayed, it means the backup has completed properly.

It usually takes ten minutes for a USB flash drive, and five minutes for a USB hard drive. It will take longer if you have added activities, downloads or documents to the laptop.

Remove the USB drive, and look at it with another computer; the backup is in a file xo.tar. You may wish to copy it to other media for safekeeping. Also copy Tiny Core Linux and these instructions, since you may need both to restore.

Restore

WARNING: this destroys all data on the internal storage.

  • either leave the USB drive in place, or insert another USB drive instead, one with an xo.tar file on it from the backup step above,
  • start the restore by typing xo-restore then press enter;
root@box:~# xo-restore
ok
root@box:~# 
  • when the ok is displayed, it means the restore has completed properly.

It usually takes between 22 and 40 minutes to restore, depending on the size of the backup, and the speed of the internal storage, which is usually much slower at writing than reading.

Repartition and Restore

WARNING: this destroys all data on the internal storage.

This creates the partition table again on the internal storage. This should only be necessary if the partition table on the internal storage is incorrect. Do this before xo-restore. Like so:

root@box:~# xo-repart
ok
root@box:~# xo-restore
ok
root@box:~#