个人工具

“UbuntuHelp:BackupYourSystem”的版本间的差异

来自Ubuntu中文

跳转至: 导航, 搜索
 
(未显示同一用户的2个中间版本)
第1行: 第1行:
 
{{From|https://help.ubuntu.com/community/BackupYourSystem}}
 
{{From|https://help.ubuntu.com/community/BackupYourSystem}}
 
{{Languages|UbuntuHelp:BackupYourSystem}}
 
{{Languages|UbuntuHelp:BackupYourSystem}}
<<Include(Tag/NeedsExpansion)>>
+
== Introduction ==
Backing up your system is important, since you never know when your hard drive will die or some other disaster will strike. Several backup methods are listed below.
+
Backup is essential. Without it, data is entirely exposed to loss under a number of circumstances such as drive failure or data corruption. Users often only learn this lesson after critical information they require is permanently lost. Attempting to [[UbuntuHelp:DataRecovery|| recover]] from such data loss can be both time consuming and extremely troublesome. So learn from others mistakes, and ensure beforehand that you have a system in place that protects your data and suits your needs.
== Archival backup ==
+
Backing up files can be accomplished either from a graphical user interface (GUI) or by issuing commands to the command line interface (CLI). It doesn't matter which method you employ, so long as it works for you and you do it on a regular basis. To make sure it's regular, it's best to ensure your method is scheduled so you don't need to remember to do it.
=== From the Desktop ===
+
== Types of Backup ==
If you go to Applications > Add/Remove, and search for 'backup' there are multiple items available.
+
It is important to note that there are several means of backup, the two primary means being folder synchronization and the creation of archives.
==== Using Simple Backup Suite ====
+
<u>Folder synchronization</u> is a means to ensure two different folders at two locations hold the same data. The synchronization is usually modified by certain rules, such as directing the program to only write new files. It is most useful for multimedia files that will not benefit from compression. The reason for this is that during encoding of such media near maximal compression is usually achieved with the codec.
Simple Backup Suite is a program that was created during the Google Summer of Code 2005. Using a familiar GNOME interface, you can specify how often it backs up, the destination, what to exclude and what to back up.
+
<u>Creating an archive</u> is mainly used for long-term storage, primarily of configuration files and documents. These will benefit greatly from the compression of gzip or bzip2 because the documents aren't stored in compressed formats. Since the size required on disk is much smaller than storing copies of multimedia files, users often create numerous full backups allowing them to go back and restore files from certain dates.
Simple Backup Suite also makes incremental backups, after creating the initial backup, only the files that have changed are backed up.
+
A third alternative is called <u>drive imaging</u>. Drive imaging is similar to the creation of archives, except that instead of copying just folders and files, the entire partition that is selected is backed up to an archive byte for byte. Such archives are useful, in the case of a hard drive failure, entire partitions can be restored quickly to a new hard drive and work resumed.
For more information see: BackupYourSystem/SimpleBackupSuite
+
'''WARNING:''' Backups such as drive imaging work at a low level and if improperly used can result in severe data loss, especially with a command line program like dd. Ensure you understand what is being done!
==== Duplicity ====
+
One final note, some file systems support <u>versioning</u> (snapshots at time intervals), which allows you to see all changes to a file. This is a local backup, but will do nothing in the case of drive failure. See the appropriate section for a discussion.  
 +
== Backup From a Graphical User Interface ==
 +
GUIs offer a graphical interface from which a user can choose from a limited selection of options to customize operation. There are also usually configured defaults and guides that help in selecting the right options. There are a few to choose from, below you'll find several good choices that work well.
 +
=== Simple Backup Suite ===
 +
Simple Backup Suite is a program designed for desktop users. Its purpose is succinctly summarized by its title, to be a simple backup suite. It is easily installed from the repositories and comes with defaults already loaded and configured. From there you can customize what directories it backs up, what it excludes, schedule it to certain times and manage old archives. This suite creates archives, keep that in mind during use.
 +
For a thorough guide to installation and general use, please see [[UbuntuHelp:BackupYourSystem/SimpleBackupSuite|SimpleBackupSuite]].
 +
=== grsync ===
 +
The program grsync is simply a GUI front end for the CLI utility rsync. It presents a clean yet simple interface for controlling the synchronization between two folders. It also supports multiple sessions (otherwise called profiles) and many of the commonly used basic and advanced options for modifying the synchronization.
 +
For more information see the [[UbuntuHelp:rsync#grsync|rsync|page]].
 +
== Backup From the Command Line ==
 +
CLI's primary advantage over a GUI is that it exposes directly to you many more options. With that however comes the obligation of knowing exactly before hand what you want to do. There are no defaults with commands it's entirely up to the user to set the desired options. To better acquaint yourself beforehand, it is advisable that you read [[UbuntuHelp:UsingTheTerminal|UsingTheTerminal]].
 +
=== Creating an Archive ===
 +
When backing up from the command line '''tar''' is often used. The tar command creates an archive file, which can then be further compressed by gzip or bzip2 to decrease the size it occupies on the disk.
 +
A full explanation of this command, including how to backup, restore and how to operate over a network among other things can be found at [[UbuntuHelp:BackupYourSystem/TAR|BackupYourSystem/TAR]].
 +
=== rsync ===
 +
Rsync updates and copies the files that have changed and even then only transfers the parts of those files that have changed.  That is useful for saving bandwidth when backing up over the network. For safety, transfer between two machines is done via SSH.  Rsync is especially good for backing up home directories.
 +
For a full explanation, there is a separate page about [[UbuntuHelp:rsync|rsync]]. As a companion, the article on [[UbuntuHelp:SSH|SSH]] is worthwhile reading for those wanting to backup over a network.
 +
=== dump/restore ===
 +
A CLI tool used to dump (as name implies) data from a drive to another location. Useful for backups when things are really going wrong on a system, supports incremental backup and is fairly fast. For more information please see its [http://dump.sourceforge.net/ homepage]. A good amount of information on its operation is located within its [[UbuntuHelp:man|man]] page, available the usual way or [http://manpages.ubuntu.com/manpages/karmic/man8/backup_dump.8.html online].
 +
== Backup Destination on a Remote Machine ==
 +
=== Simple Backup Suite ===
 +
[[UbuntuHelp:BackupYourSystem/SimpleBackupSuite#|SimpleBackupSuite]]
 +
=== Duplicity ===
 
[[UbuntuHelp:DuplicityBackupHowto|DuplicityBackupHowto]]
 
[[UbuntuHelp:DuplicityBackupHowto|DuplicityBackupHowto]]
==== BackupPC ====
+
=== BackupPC ===
 
[[UbuntuHelp:BackupPC|BackupPC]]
 
[[UbuntuHelp:BackupPC|BackupPC]]
=== From the command line ===
+
== Drive Imaging ==
==== Using the TAR command ====
+
[[UbuntuHelp:DriveImaging|Drive Imaging]] is a complex topic, and a new article has been created for it. Please see that page for background information and instructions on how to create and restore images of folders or whole partitions.
Suitable for backing up your home directory. Open a terminal and enter the command:
+
== Alternatives ==
<pre><nowiki>
+
=== Versioning File Systems ===
tar cvfz output input
+
These will be very useful when they mature. For example, ext3cow file system states it, "provides a time-shifting interface that allows a real-time and continuous view of the past. This allows users to access their file system as it appeared at any point in time." This feature is automatic -- nothing (meaning no backups, manual copies, etc.) need be done to have this benefit when using a copy-on-write file system.
</nowiki></pre>
+
* [http://www.ext3cow.com/Welcome.html ext3cow] (Last release: March 9, 2008)
The compressed image created can be broken into smaller chunks for copying to removable media using the split command.
+
* [http://wayback.sourceforge.net/ Wayback] (Last release: 2004-06-26)
More information can be found here: [[UbuntuHelp:BackupYourSystem/TAR|BackupYourSystem/TAR]]
+
* [http://n0x.org/copyfs/ CopyFS] (is unmaintained)
==== Creating disc images using dd ====
+
* [http://en.wikipedia.org/wiki/Btrfs B-tree FS] (not yet stable - April 2010)
Suitable for backing up entire disks. Open a terminal (in the examples you will need to replace hda with the partition you wish to backup).
+
* [http://en.wikipedia.org/wiki/ZFS ZFS] (no native filesystem in ubuntu)
Create a hard disk image:
+
They let you see ''every'' change to a file over its life span, but offer no protection against a hard drive that fails. These projects are therefore complimentary to the backups described above, which offer snapshots or synchronization that can be stored on other hard drives or even other locations on a network.
<pre><nowiki>
+
Versioning tools such as [[UbuntuHelp:Subversion|Subversion]] could also be useful while we wait for versioning file systems to become mature and fully supported.
dd if=/dev/hda1 of=/home/hda1.bin
+
=== Early Stage Ideas ===
</nowiki></pre>
+
In addition to that already discussed, there are projects still in development that you may wish to keep appraised of or even participate in.
Create a compressed disk image
+
* Ubuntu:ContinuousBackups
<pre><nowiki>
+
* Ubuntu:HomeUserBackup
dd if=/dev/hda1 | gzip > /home/hda1.bin.gz
+
* Ubuntu:MigrateAndBackup
</nowiki></pre>
+
* Ubuntu:BackupOfPackageUserData
Back up the MBR
+
* Ubuntu:UbuntuDownUnder/BOFs/SimpleBackupSolution
<pre><nowiki>
+
* Ubuntu:SessionBackup
dd if=/dev/hda of=/home/hda.boot.mbr bs=512 count=1
+
== Related Links ==
</nowiki></pre>
+
Restore MBR (from a Live CD)
+
<pre><nowiki>
+
dd if=/mnt/hda1/home/hda.boot.mbr of=/dev/hda bs=512 count=1
+
</nowiki></pre>
+
Backup a drive to another drive
+
<pre><nowiki>
+
dd if=/dev/hda of=/dev/hdb conv=noerror,sync bs=4k
+
</nowiki></pre>
+
The command:
+
<pre><nowiki>
+
dd -if /dev/hda1 > partitionimage.dd
+
</nowiki></pre>
+
will backup "/dev/hda1", the first partition on hda1. A whole drive (including the MBR) could be backed up using just /dev/hda as the input "file". Restoring is done by:
+
<pre><nowiki>
+
dd -if partitionimage.dd -of /dev/hda1
+
</nowiki></pre>
+
If you have a complete new harddrive and want to restore the backup (or copy your old system to the new drive). First, the new drive has to be bigger or exactly the same size as the old one.
+
First go superuser and switch to runlevel 1 so that you can fumble around with the harddisk without other services interfering:
+
<pre><nowiki>
+
sudo su
+
init 1
+
</nowiki></pre>
+
restore either the whole disk to the new drive or one partition (depending on how you made the backup):
+
<pre><nowiki>
+
dd -if partitionimage.dd -of /dev/hda1
+
</nowiki></pre>
+
If you restored the whole drive (/dev/hda), the system will not automatically create the devices (/dev/hda1, /dev/hda2) if you just restored the whole drive. If you know how to make the devices show up without reboot, write it here, otherwise this is a good moment to reboot.
+
If you restored the system to a new drive, and your device names changed (for example from /dev/hda to /dev/sda) then you must adapt the bootloader and the mount points. While still on runlevel 1, edit these files:
+
<pre><nowiki>
+
/boot/grub/menu.list
+
/etc/fstab
+
</nowiki></pre>
+
Update your drive mappings to the new devices there. Grub may be setup with numberish IDs for your drives, then you need the command ''blkid'' to read the new identifiers of your disk.
+
After your system is able to boot and runs again, you can resize your partitions to fill the rest of the new harddisk (if you want that) as described here:
+
* [http://www.howtoforge.com/linux_resizing_ext3_partitions_p2 Enlarging An ext3 Partition]
+
You can use the "loopback device" to mount this partition image, making it easy to read the old version of files and still keep your current version untouched.
+
[http://www.trekweb.com/~jasonb/articles/linux_loopback.shtml Mounting disks with Linux's loopback device]
+
by Jason Boxman
+
== Incremental Backup ==
+
=== rsync ===
+
Rsync updates the copies the files that have changed and even then only transfers the parts of those files that have changed.  That is useful for saving bandwidth when backing up over the network.
+
For safety, transfer between two machines is done via SSH.  Rsync is especially good for backing up home directories.
+
The command for transferring to a remote machine is:
+
<pre><nowiki>
+
sudo rsync --delete -azvv -e ssh /home [email protected]:./backupdirectory
+
</nowiki></pre>
+
<code><nowiki>-z</nowiki></code> compresses the data
+
<code><nowiki>--delete</nowiki></code> deletes files that don't exist on the system being backed up. Maybe you want this, maybe not.
+
<code><nowiki>-a</nowiki></code> preserves the date and times of the files (same as <code><nowiki>-t</nowiki></code>), descends recursively into all directories (same as <code><nowiki>-r</nowiki></code>), copies symlinks as symlinks (same as <code><nowiki>-l</nowiki></code>), preserves file permissions (same as <code><nowiki>-p</nowiki></code>), preserves groups (same as <code><nowiki>-g</nowiki></code>), preserves file ownership (same as <code><nowiki>-o</nowiki></code>), and preserves devices as devices (same as <code><nowiki>-D</nowiki></code>).
+
<code><nowiki>-vv</nowiki></code> increases the verbosity of the reporting process
+
rsync has several [http://www.debianadmin.com/rsync-backup-web-interfacefrontend-or-gui-tools.html graphical frontends: grsync, Backup Monitor, QSync, Zynk, rsyncbackup, TKsync]
+
For more options, there is a separate page about [[UbuntuHelp:rsync|rsync]]
+
== See also ==
+
 
You might also want to check out these backup programs which will help you to make automated backups of your system:
 
You might also want to check out these backup programs which will help you to make automated backups of your system:
 
* [[UbuntuWiki:TimeVault|TimeVault]].
 
* [[UbuntuWiki:TimeVault|TimeVault]].
第94行: 第62行:
 
* [http://backintime.le-web.org/ Back In Time].
 
* [http://backintime.le-web.org/ Back In Time].
 
* [http://amanda.zmanda.com/ Amanda].
 
* [http://amanda.zmanda.com/ Amanda].
* [http://www.partimage.org/ Partimage].
 
 
* [http://www.mondorescue.org/ Mondo Rescue].
 
* [http://www.mondorescue.org/ Mondo Rescue].
 
* [http://www.rsnapshot.org/ rsnapshot].
 
* [http://www.rsnapshot.org/ rsnapshot].
 
* [http://www.bacula.org/ Bacula].
 
* [http://www.bacula.org/ Bacula].
* [http://en.wikipedia.org/wiki/Nice_(Unix) nice].
 
 
* [http://www.nongnu.org/storebackup/ storeBackup -- it has unique features].
 
* [http://www.nongnu.org/storebackup/ storeBackup -- it has unique features].
 +
[http://pietrobattiston.it/wiki/doku.php?id=comparison_of_backup_softwares A comparison of graphical backup tools for Linux desktop.]
 
Other wiki discussing various Linux backup techniques:
 
Other wiki discussing various Linux backup techniques:
 
* [http://www.nslu2-linux.org/wiki/HowTo/BackupYourLinuxBox NSLU2: back up your Linux box]
 
* [http://www.nslu2-linux.org/wiki/HowTo/BackupYourLinuxBox NSLU2: back up your Linux box]
第110行: 第77行:
 
A personal blog listing many open source backup solutions:
 
A personal blog listing many open source backup solutions:
 
[http://davestechshop.net/ListOfFreeOpenSourceLinuxUbuntuBackupSoftware List of Free Open Source Linux and Ubuntu Backup Software]
 
[http://davestechshop.net/ListOfFreeOpenSourceLinuxUbuntuBackupSoftware List of Free Open Source Linux and Ubuntu Backup Software]
== Versioning File Systems ==
 
These will be very useful when they mature. For example, ext3cow file system states it, "provides a time-shifting interface that allows a real-time and continuous view of the past.  This allows users to access their file system as it appeared at any point in time." This feature is automatic -- nothing (meaning no backups, manual copies, etc.) need be done to have this benefit when using a copy-on-write file system.
 
* [http://www.ext3cow.com/Welcome.html ext3cow]
 
* [http://wayback.sourceforge.net/ Wayback]
 
* [http://n0x.org/copyfs/ CopyFS]
 
They let you see *every* change to a file. But they don't help when the hard drive fails, so they are complementary to these other forms of backup that only store occasional snapshots, but also survive hardware failures.
 
Versioning tools such as [[UbuntuHelp:Subversion|Subversion]] could also be useful while we wait for versioning file systems to become mature and fully supported.
 
== Other Early Stage Ideas ==
 
Ubuntu:ContinuousBackups and Ubuntu:HomeUserBackup and Ubuntu:MigrateAndBackup have some interesting ideas about making backups completely automated.
 
Ubuntu:BackupOfPackageUserData and Ubuntu:UbuntuDownUnder/BOFs/SimpleBackupSolution also still needs help.
 
What exactly does Ubuntu:SessionBackup do?
 
Are there more user-friendly solutions than the destroy disk command (dd)?  Is there another way to backup the MBR?
 
 
----
 
----
[[category:CategoryBackupRecovery]]
+
[[category:CategoryBackupRecovery]] [[category:CategoryCommandLine]]
  
 
[[category:UbuntuHelp]]
 
[[category:UbuntuHelp]]

2010年5月19日 (三) 21:40的最新版本


Introduction

Backup is essential. Without it, data is entirely exposed to loss under a number of circumstances such as drive failure or data corruption. Users often only learn this lesson after critical information they require is permanently lost. Attempting to | recover from such data loss can be both time consuming and extremely troublesome. So learn from others mistakes, and ensure beforehand that you have a system in place that protects your data and suits your needs. Backing up files can be accomplished either from a graphical user interface (GUI) or by issuing commands to the command line interface (CLI). It doesn't matter which method you employ, so long as it works for you and you do it on a regular basis. To make sure it's regular, it's best to ensure your method is scheduled so you don't need to remember to do it.

Types of Backup

It is important to note that there are several means of backup, the two primary means being folder synchronization and the creation of archives. Folder synchronization is a means to ensure two different folders at two locations hold the same data. The synchronization is usually modified by certain rules, such as directing the program to only write new files. It is most useful for multimedia files that will not benefit from compression. The reason for this is that during encoding of such media near maximal compression is usually achieved with the codec. Creating an archive is mainly used for long-term storage, primarily of configuration files and documents. These will benefit greatly from the compression of gzip or bzip2 because the documents aren't stored in compressed formats. Since the size required on disk is much smaller than storing copies of multimedia files, users often create numerous full backups allowing them to go back and restore files from certain dates. A third alternative is called drive imaging. Drive imaging is similar to the creation of archives, except that instead of copying just folders and files, the entire partition that is selected is backed up to an archive byte for byte. Such archives are useful, in the case of a hard drive failure, entire partitions can be restored quickly to a new hard drive and work resumed. WARNING: Backups such as drive imaging work at a low level and if improperly used can result in severe data loss, especially with a command line program like dd. Ensure you understand what is being done! One final note, some file systems support versioning (snapshots at time intervals), which allows you to see all changes to a file. This is a local backup, but will do nothing in the case of drive failure. See the appropriate section for a discussion.

Backup From a Graphical User Interface

GUIs offer a graphical interface from which a user can choose from a limited selection of options to customize operation. There are also usually configured defaults and guides that help in selecting the right options. There are a few to choose from, below you'll find several good choices that work well.

Simple Backup Suite

Simple Backup Suite is a program designed for desktop users. Its purpose is succinctly summarized by its title, to be a simple backup suite. It is easily installed from the repositories and comes with defaults already loaded and configured. From there you can customize what directories it backs up, what it excludes, schedule it to certain times and manage old archives. This suite creates archives, keep that in mind during use. For a thorough guide to installation and general use, please see SimpleBackupSuite.

grsync

The program grsync is simply a GUI front end for the CLI utility rsync. It presents a clean yet simple interface for controlling the synchronization between two folders. It also supports multiple sessions (otherwise called profiles) and many of the commonly used basic and advanced options for modifying the synchronization. For more information see the rsync|page.

Backup From the Command Line

CLI's primary advantage over a GUI is that it exposes directly to you many more options. With that however comes the obligation of knowing exactly before hand what you want to do. There are no defaults with commands it's entirely up to the user to set the desired options. To better acquaint yourself beforehand, it is advisable that you read UsingTheTerminal.

Creating an Archive

When backing up from the command line tar is often used. The tar command creates an archive file, which can then be further compressed by gzip or bzip2 to decrease the size it occupies on the disk. A full explanation of this command, including how to backup, restore and how to operate over a network among other things can be found at BackupYourSystem/TAR.

rsync

Rsync updates and copies the files that have changed and even then only transfers the parts of those files that have changed. That is useful for saving bandwidth when backing up over the network. For safety, transfer between two machines is done via SSH. Rsync is especially good for backing up home directories. For a full explanation, there is a separate page about rsync. As a companion, the article on SSH is worthwhile reading for those wanting to backup over a network.

dump/restore

A CLI tool used to dump (as name implies) data from a drive to another location. Useful for backups when things are really going wrong on a system, supports incremental backup and is fairly fast. For more information please see its homepage. A good amount of information on its operation is located within its man page, available the usual way or online.

Backup Destination on a Remote Machine

Simple Backup Suite

SimpleBackupSuite

Duplicity

DuplicityBackupHowto

BackupPC

BackupPC

Drive Imaging

Drive Imaging is a complex topic, and a new article has been created for it. Please see that page for background information and instructions on how to create and restore images of folders or whole partitions.

Alternatives

Versioning File Systems

These will be very useful when they mature. For example, ext3cow file system states it, "provides a time-shifting interface that allows a real-time and continuous view of the past. This allows users to access their file system as it appeared at any point in time." This feature is automatic -- nothing (meaning no backups, manual copies, etc.) need be done to have this benefit when using a copy-on-write file system.

  • ext3cow (Last release: March 9, 2008)
  • Wayback (Last release: 2004-06-26)
  • CopyFS (is unmaintained)
  • B-tree FS (not yet stable - April 2010)
  • ZFS (no native filesystem in ubuntu)

They let you see every change to a file over its life span, but offer no protection against a hard drive that fails. These projects are therefore complimentary to the backups described above, which offer snapshots or synchronization that can be stored on other hard drives or even other locations on a network. Versioning tools such as Subversion could also be useful while we wait for versioning file systems to become mature and fully supported.

Early Stage Ideas

In addition to that already discussed, there are projects still in development that you may wish to keep appraised of or even participate in.

  • Ubuntu:ContinuousBackups
  • Ubuntu:HomeUserBackup
  • Ubuntu:MigrateAndBackup
  • Ubuntu:BackupOfPackageUserData
  • Ubuntu:UbuntuDownUnder/BOFs/SimpleBackupSolution
  • Ubuntu:SessionBackup

Related Links

You might also want to check out these backup programs which will help you to make automated backups of your system:

A comparison of graphical backup tools for Linux desktop. Other wiki discussing various Linux backup techniques:

See the full discussion in these threads on the Ubuntu forums:

"Backup and Restore Your Ubuntu System using Sbackup" has nice step-by-step instructions (with screenshots) of using sbackup. A personal blog listing many open source backup solutions: List of Free Open Source Linux and Ubuntu Backup Software