X-Git-Url: https://git.alrj.org/?p=brioche.git;a=blobdiff_plain;f=README.html;fp=README.html;h=160a9829ee4136f226d260c4e27f99b621b5bf6c;hp=1c27382f8372ba21514008f72298bb556cdea7cb;hb=5430e18aa198b619dd5e4a812dccc96751aba970;hpb=d7afcf54c97edfdb414913c99baf121aa5626f72 diff --git a/README.html b/README.html index 1c27382..160a982 100644 --- a/README.html +++ b/README.html @@ -298,7 +298,7 @@ ul.auto-toc { Contact: <amand.tihon@alrj.org> Version: -1.0 +1.1 Date: Jan 5th, 2008 Copyright: @@ -306,18 +306,37 @@ ul.auto-toc { +
+

Table of contents

+ +
-

Abstract

+

1   Abstract

Brioche is yet another backup shell script. Its main features are

-

Rationale

+

2   Rationale

Large numbers of backup solutions are freely available today, but when playing with incremental or differential backups, most of them rely on some filesystem capabilities, like hard-linking. If the only remote location available to @@ -336,23 +355,38 @@ incremental, which are based upon the last (full or incremental) backup.

-

Getting Brioche

+

3   Getting Brioche

You can download the tarball from http://www.alrj.org/projects/brioche or get the latest development version with the following git command:

 git clone http://git.alrj.org/git/brioche.git
 
+

A gitweb interface is also available at http://git.alrj.org/

+
+
+

4   Requirements

+

Brioche relies on a few easily available free software :

+ +

See the References section for links to the aforementioned softwares.

-

Installation

+

5   Installation

Copy the three files brioche, brioche.conf and briochetab where you like, and set the CONFIG_FILE variable in the brioche script -accordingly. If needed, run chmod +x /path/to/brioche.

+accordingly. If needed, run chmod +x /path/to/brioche. In a typical setup, +the brioche script will be put in /usr/local/bin with the other two +files under /etc.

-

Using Brioche

+

6   Using Brioche

-

Configuration

+

6.1   Configuration

Edit the file brioche.conf to suit your needs. Each option is commented inline and will be detailed here.

@@ -379,9 +413,10 @@ archives. Possible values are "gz", "bz2" and "lzma&quo not be available with older versions of GNU tar.
TAR_OPTS
Additionnal options that you may want to pass to tar. A typical value could -be "--one-filesystem -S". The first option will skip all other mointpoints -(very usefull if you have /dev, /proc, /sys or REPODIR mounted under a device -that must be archived). The second one will try to deal with sparse files.
+be "--one-file-system -S". The first option will skip all other +mointpoints (very usefull if you have /dev, /proc, /sys or REPODIR mounted +under a device that must be archived). The second one will try to deal with +sparse files.
SNAPSHOT_MOUNTPOINT
Sets the directory where the temporary LVM snapshots must be mounted.
SNAPSHOT_NAME
@@ -390,14 +425,24 @@ that must be archived). The second one will try to deal with sparse files.
Set the size of the snapshot volume. The same suffix than for lvcreate(8) are available.
USE_FTP
-
Still TODO.
+
If set to "yes", Brioche will upload the backups on an FTP server. +See the Using FTP section for more information about this feature.
+
FTP_HOST
+
The address of the FTP server.
+
FTP_DIR
+
The base directory on the FTP server under which all the archives will be +stored. Brioche will never touch anything that is not below this directory.
+
FTP_KEEP
+
Tells Brioche to keep a certain amount of older runs on the FTP. A run is +a full backup plus all its subsequent differential backups. See the Using +FTP section for a more detailed explanation.
-

Defining backups

+

6.2   Defining backups

The backups are defined in the file birochetab. Here is a typical example for a Xen config where cottman is the dom0 and syrtis, kadarin, valeron are -domUs

+domUs:

 # Partition or LV           Snapshot    Host name     Volume name
 # ---------------------------------------------------------------
@@ -425,8 +470,10 @@ the backup of a logical volume.

files will be stored, and how they'll be named. The destination directory will be created under the REPODIR, and its name will be the value on the third column. Inside this directory, archive files will be named from the value given -in the fourth column. For instance, a full and a differential backup for -valeron would lead to the following structure

+in the fourth column. Grouping by domUs' hostnames is only a suggestion, it can +be completely different and adapted to suit your needs.

+

For instance, a full and a differential backup for the host valeron of the +previous example would lead to the following structure:

 user:/REPODIR$ ls -l valeron/
 total 356544
@@ -435,9 +482,61 @@ total 356544
 -rw-r--r-- 1 root root    504725 Jan  4 04:06 root.incr.20090104.snar
 -rw-r--r-- 1 root root    160542 Jan  4 04:06 root.incr.20090104.tar.bz2
 
+ +++ + + + + +

WARNING !

+

In case your REPODIR is not on a distinct device, it will be included +in the backup if you've included the device in your briochetab.

+

To avoid this issue, you can either exclude it explicitely by adding an +"--exclude=..." option in TAR_OPTS, or simply specify in your +briochetab file which directories need to be archived.

+
+
+
+

6.3   Using FTP

+

With the help of lftp, Brioche is able to store an history of backups on an FTP +server. This is mainly usefull when no other distant repository is available. +If possible, consider using an CIFS, NFS, sshfs or any other kind of remote +mountpoint for your REPODIR.

+

The archives present in the local REPODIR will be mirrored to the FTP server +after each backup, be it a full or a differential one.

+

Since there is no way to hide the credentials if they are passed to lftp on the +command line, the authentication relies on your .netrc file. See man +netrc(5) for more information. In the home directory of the user that runs +Brioche (typically root's), create the .netrc file with the following +lines:

+
+machine ftp.example.com
+login username
+password SikRet
+
+

Don't forget to secure it with chmod 600 .netrc or lftp will refuse to use +it. The machine name must match the FTP_HOST configuration directive in +brioche.conf.

+

On the FTP server, Brioche will keep a configurable amount of runs. +Each run consists of a full backup and all the differential backups that are +based on it. Before doing a full backup, Brioche will rotate the +runs and keep only the configured number of older backups. The current +backups can always be found under /FTP_DIR/hostname/latest/. Older ones +will be under /FTP_DIR/hostname/run-X/ with X equal to 1 for the previous +run, 2 for the one before and so forth, up to the value of FTP_KEEP.

+

Here's what happens during the rotation:

+
-

Running Brioche

+

6.4   Running Brioche

Brioche understands the following arguments:

@@ -445,7 +544,8 @@ total 356544 - + @@ -456,7 +556,7 @@ script is pretty verbose, so don't panic if you see lots of lines scrolling in your terminal. By default, Brioche will try to make differential backups, but will gracefully fall back and do a full backup if none is available.

If all is fine, it can be added in the system crontab. Here's a suggestion for -weekly full backup on Sunday, with differential during the weekdays

+weekly full backup on Sunday, with differential during the weekdays:

 # Daily incremental backup
 30  3  *  *  1-6  /usr/local/bin/brioche > /var/log/backup.`date "+%a"`.log 2>&1
@@ -468,22 +568,23 @@ being the abbreviated day of the week (see man date(1) for the format).

-

Bug reporting

+

7   Bug reporting

There's no bugtracker for this project, your bug reports should be sent to the author : Amand Tihon <amand.tihon@alrj.org>. Please include as much information as possible in your report.

-

References

+

8   References

-f, --fullDo a full backup (by default, brioche will do a differential).
Do a full backup (by default, brioche will try to do a +differential).
-h, --help Show a very limited help.