aboutsummaryrefslogtreecommitdiff
path: root/docs/examples
diff options
context:
space:
mode:
Diffstat (limited to 'docs/examples')
-rw-r--r--docs/examples/example.dup111
-rw-r--r--docs/examples/example.ldap45
-rw-r--r--docs/examples/example.makecd31
-rw-r--r--docs/examples/example.mysql75
-rw-r--r--docs/examples/example.pgsql20
-rw-r--r--docs/examples/example.rdiff79
-rw-r--r--docs/examples/example.sh2
-rw-r--r--docs/examples/example.svn23
-rw-r--r--docs/examples/example.sys32
-rw-r--r--docs/examples/example.trac16
10 files changed, 434 insertions, 0 deletions
diff --git a/docs/examples/example.dup b/docs/examples/example.dup
new file mode 100644
index 0000000..7db7771
--- /dev/null
+++ b/docs/examples/example.dup
@@ -0,0 +1,111 @@
+
+# passed directly to duplicity
+#options = --verbosity 8
+
+# default is 0, but set to 19 if you want to lower the priority.
+nicelevel = 19
+
+# default is yes. set to no to skip the test if the remote host is alive
+#testconnect = no
+
+######################################################
+## gpg section
+## (how to encrypt and optionnally sign the backups)
+
+[gpg]
+
+# passphrase needed to unlock the GnuPG key
+# NB: do not quote it, and it should not contain any quote
+password = a_very_complicated_passphrase
+
+# default is no, for backward compatibility with backupninja <= 0.5.
+# when set to yes, encryptkey option must be set below.
+sign = yes
+
+# key ID used for data encryption and, optionnally, signing.
+# if not set, local root's default gpg key is used.
+encryptkey = 04D9EA79
+
+######################################################
+## source section
+## (where the files to be backed up are coming from)
+
+[source]
+
+# files to include in the backup
+# (supports globbing with '*')
+# BIG FAT WARNING
+# Symlinks are not dereferenced. Moreover, an include line whose path
+# contains, at any level, a symlink to a directory, will only have the
+# symlink backed-up, not the target directory's content. Yes, you have
+# to dereference yourself the symlinks, or to use 'mount --bind'
+# instead.
+# EXAMPLE
+# Let's say /home is a symlink to /mnt/crypt/home ; the following line
+# will only backup a "/home" symlink ; neither /home/user nor
+# /home/user/Mail will be backed-up :
+# include = /home/user/Mail
+# A workaround is to 'mount --bind /mnt/crypt/home /home' ; another
+# one is to write :
+# include = /mnt/crypt/home/user/Mail
+
+include = /var/spool/cron/crontabs
+include = /var/backups
+include = /etc
+include = /root
+include = /home
+include = /usr/local/bin
+include = /usr/local/sbin
+include = /var/lib/dpkg/status
+include = /var/lib/dpkg/status-old
+
+# If vservers = yes in /etc/backupninja.conf then the following variables can
+# be used:
+# vsnames = all | <vserver1> <vserver2> ... (default = all)
+# vsinclude = <path>
+# Any path specified in vsinclude is added to the include list for each vserver
+# listed in vsnames (or all if vsnames = all).
+# E.g. vsinclude = /home will backup the /home partition in every vserver
+# listed in vsnames. If you have vsnames = "foo bar baz", this vsinclude will
+# add to the include list /vservers/foo/home, /vservers/bar/home and
+# /vservers/baz/home.
+# Vservers paths are derived from $VROOTDIR.
+
+# rdiff-backup specific comment, TO ADAPT
+# files to exclude from the backup
+# (supports globbing with '*')
+exclude = /home/*/.gnupg
+
+######################################################
+## destination section
+## (where the files are copied to)
+
+[dest]
+
+# perform an incremental backup? (default = yes)
+# if incremental = no, perform a full backup in order to start a new backup set
+#incremental = yes
+
+# how many days of data to keep ; default is 60 days.
+# (you can also use the time format of duplicity)
+# 'keep = yes' means : do not delete old data, the remote host will take care of this
+#keep = 60
+#keep = yes
+
+# bandwith limit, in kbit/s ; default is 0, i.e. no limit
+#bandwidthlimit = 128
+
+# passed directly to ssh and scp
+sshoptions = -i /root/.ssh/id_dsa_duplicity
+
+# put the backups under this directory
+destdir = /backups
+
+# the machine which will receive the backups
+desthost = backuphost
+
+# make the files owned by this user
+# note: you must be able to ssh backupuser@backhost
+# without specifying a password (if type = remote).
+destuser = backupuser
+
diff --git a/docs/examples/example.ldap b/docs/examples/example.ldap
new file mode 100644
index 0000000..adc1fcd
--- /dev/null
+++ b/docs/examples/example.ldap
@@ -0,0 +1,45 @@
+##
+## configuration file for openldap backups
+##
+## If the method is set to "slapcat", the LDIFs generated are
+## suitable for use with slapadd. As the entries are in database
+## order, not superior first order, they cannot be loaded with
+## ldapadd without being reordered.
+##
+
+## backupdir (default /var/backups/ldap): the destination for the backups
+# backupdir = /var/backups/ldap
+
+## conf (default /etc/ldap/slapd.conf): the location of the slapd.conf file.
+# conf = /etc/ldap/slapd.conf
+
+## databases (default all): either a space separated list of database
+## numbers or prefixes, or the keyword 'all'.
+# databases = all
+
+## compress (default yes): if set to yes, ldif exports are gzipped.
+# compress = yes
+
+## restart (default no): if set to yes, slapd is stopped before backups are
+## performed, and then started again after they have finished, this is necessary
+## if your backend is ldbm and your method is slapcat, but unnecessary otherwise.
+# restart = no
+
+## method (default ldapsearch): either 'ldapsearch' or 'slapcat'
+## ldapsearch is the safer method to do backups, but is slow, slapcat
+## is much faster, but should not be done on an ldbm backend unless you have
+## restart set to yes
+## NOTE: with the ldapsearch method passwordfile and binddn need to be set
+# method = ldapsearch
+
+## passwordfile (no default): this should be set to the file that contains
+## your ldap password, this is required for ldapsearch and not needed for slapcat
+## this file should have no newlines in it, echo -n "password" > passfile works.
+## NOTE: be sure to set the permissions on your password file appropriately
+## (hint: world readable is not appropriate)
+# passwordfile =
+
+## binddn (no default): set this to the DN of the user that the ldapsearch binds
+## to, not needed for slapcat
+# binddn =
+
diff --git a/docs/examples/example.makecd b/docs/examples/example.makecd
new file mode 100644
index 0000000..b01094e
--- /dev/null
+++ b/docs/examples/example.makecd
@@ -0,0 +1,31 @@
+
+# TYP is cd or dvd AS WELL AS the disk inside!!
+burnertype = cd
+
+# system (yes) or directory/files (no)
+# this function not yet implemented
+#system = yes
+
+# location for image file
+backupdir = /var/backups/makecd
+
+# image filename
+imagefile = example.iso
+
+# iso or burn to cd/dvd?
+isoonly = no
+
+# cd/dvd burner device
+device=/dev/hdc
+
+# base directory to include in the backup
+target = /
+
+# files or directories to be excluded
+exclude = /proc
+exclude = /lost+found
+exclude = /tmp
+
+# backupninja will perfrom this at gvien date/time
+when = wednesday at 02:00
+
diff --git a/docs/examples/example.mysql b/docs/examples/example.mysql
new file mode 100644
index 0000000..51c2247
--- /dev/null
+++ b/docs/examples/example.mysql
@@ -0,0 +1,75 @@
+### backupninja mysql config file ###
+
+databases = all
+backupdir = /var/backups/mysql
+hotcopy = no
+sqldump = yes
+compress = yes
+
+### authentication ###
+
+# three authentication methods:
+#
+# 1. setting the user, so that /home/user/.my.cnf is used.
+# user = some-unix-user
+#
+# 2. specifying the mysql dbuser and dbpassword,
+# which generates a temporary .my.cnf in /root/.my.cnf
+# dbusername = <some-mysql-user>
+# dbpassword = <password>
+#
+# 3. specify which config file to use with configfile
+# (this option does not work with hotcopy)
+# configfile = /etc/mysql/debian.cnf
+#
+# if user and dbusername are not specified, the default is to use
+# /etc/mysql/debian.cnf for configfile.
+
+### all options ###
+
+# configfile = < path/to/file > (default = /etc/mysql/debian.cnf)
+# The config file is passed to mysql with --defaults-file.
+# On debian, this default will allow backupninja to make backups
+# of mysql without configuring any additional options.
+# (this option is not compatible with "user" or "dbusername").
+#
+# user = <user> (default = root)
+# Run mysql commands as 'user'. A valid .my.cnf must exist with a
+# database username and password in the user's home directory.
+# (this option is not compatible with "configfile" or "dbusername").
+#
+# dbusername = <dbuser> (no default)
+# The user must have access to the databases specified later.
+# (this option is not compatible with "configfile" or "user").
+#
+# dbpassword = <dbpass> (no default)
+# The password used with dbusername. this password will NOT be passed
+# on the command line and is not readable using "ps aux".
+#
+# dbhost = <host> (default = localhost)
+# only localhost works right now.
+#
+# databases = < all | db1 db2 db3 > (default = all)
+# which databases to backup. should either be the word 'all' or a
+# space separated list of database names.
+#
+# backupdir = < path/to/destination > (default = /var/backups/mysql)
+# where to dump the backups. hotcopy backups will be in a subdirectory 'hotcopy' and
+# sqldump backups will be in a subdirectory 'sqldump'
+#
+# hotcopy = < yes | no > (default = no)
+# make a backup of the actual database binary files using mysqlhotcopy.
+#
+# sqldump = < yes | no > (default = no)
+# make a backup using mysqldump. this creates text files with sql commands
+# sufficient to recontruct the database.
+#
+# compress = < yes | no > (default = yes)
+# if yes, compress the sqldump output.
+#
+# vsname = <vserver> (no default)
+# what vserver to operate on, only used if vserver = yes in /etc/backupninja.conf
+# if you do not specify a vsname the host will be operated on
+#
+# NB: databases = all doesn't seem to work with hotcopy = yes when vsname is specified
+# I would like to know how to fix this.
diff --git a/docs/examples/example.pgsql b/docs/examples/example.pgsql
new file mode 100644
index 0000000..d9aab42
--- /dev/null
+++ b/docs/examples/example.pgsql
@@ -0,0 +1,20 @@
+### backupninja PostgreSQL config file ###
+
+# vsname = <vserver> (no default)
+# what vserver to operate on, only used if vserver = yes in /etc/backupninja.conf
+# if you do not specify a vsname the host will be operated on
+# Note: if operating on a vserver, $VROOTDIR will be prepended to backupdir.
+
+# backupdir = <dir> (default: /var/backups/postgres)
+# where to dump the backups
+
+# databases = < all | db1 db2 db3 > (default = all)
+# which databases to backup. should either be the word 'all' or a
+# space separated list of database names.
+# Note: when using 'all', pg_dumpall is used instead of pg_dump, which means
+# that cluster-wide data (such as users and groups) are saved.
+
+# compress = < yes | no > (default = yes)
+# if yes, compress the pg_dump/pg_dumpall output.
+
+
diff --git a/docs/examples/example.rdiff b/docs/examples/example.rdiff
new file mode 100644
index 0000000..bd16c3c
--- /dev/null
+++ b/docs/examples/example.rdiff
@@ -0,0 +1,79 @@
+
+## passed directly to rdiff-backup
+# options = --force
+
+## default is 0, but set to 19 if you want to lower the priority.
+# nicelevel = 19
+
+## default is yes. set to no to skip the test if the remote host is alive
+# testconnect = no
+
+######################################################
+## source section
+## (where the files to be backed up are coming from)
+
+[source]
+
+# an optional subdirectory below 'directory' (see [dest])
+label = thishostname
+
+# only local type is currently supported
+type = local
+
+# how many days of data to keep
+# (you can also use the time format of rdiff-backup, e.g. 6D5h)
+keep = 60
+
+# a note about includes and excludes:
+# all the excludes come after all the includes.
+# otherwise, the order is not taken into account.
+# currently, you cannot do "include = /"
+
+# files to include in the backup
+# (supports globbing with '*')
+include = /var/spool/cron/crontabs
+include = /var/backups
+include = /etc
+include = /root
+include = /home
+include = /usr/local/bin
+include = /usr/local/sbin
+include = /var/lib/dpkg/status
+include = /var/lib/dpkg/status-old
+
+# If vservers = yes in /etc/backupninja.conf then the following variable can be used:
+# vsinclude = <path>
+# Any path specified in vsinclude is added to the include list for each vserver
+# on the system.
+# e.g. vsinclude = /home will backup the /home partition in every vserver
+# on the system. If you have /vservers/foo, /vservers/bar and /vservers/baz
+# this vsinclude will add to the include list /vservers/foo/home,
+# /vservers/bar/home and /vservers/baz/home
+# Included vservers are derived from listing all vservers in $VROOTDIR (suggestions
+# for improving this are encouraged).
+
+# files to exclude from the backup
+# (supports globbing with '*')
+#exclude = /home/*/.gnupg
+
+######################################################
+## destination section
+## (where the files are copied to)
+
+[dest]
+
+# default is remote, if set to 'local' then
+# ignore the 'host' and 'user' options.
+type = remote
+
+# put the backups under this directory
+directory = /backups
+
+# the machine which will receive the backups
+host = backuphost
+
+# make the files owned by this user
+# note: you must be able to ssh backupuser@backhost
+# without specifying a password (if type = remote).
+user = backupuser
+
diff --git a/docs/examples/example.sh b/docs/examples/example.sh
new file mode 100644
index 0000000..f02f026
--- /dev/null
+++ b/docs/examples/example.sh
@@ -0,0 +1,2 @@
+
+dpkg --get-selections > /var/backups/dpkg-selections.txt
diff --git a/docs/examples/example.svn b/docs/examples/example.svn
new file mode 100644
index 0000000..e849706
--- /dev/null
+++ b/docs/examples/example.svn
@@ -0,0 +1,23 @@
+##
+## Perform a hot backup of subversion repositories.
+##
+## REQUIRES: apt-get install subversion-tools
+##
+## This file can be empty, the defaults are usually good.
+##
+
+## where subversion data lives
+# src = /var/lib/svn
+
+## where to save the backups to
+# dest = /var/backups/svn
+
+## where to save temporary backups
+## (if successful, $tmp is moved to $dest)
+# tmp = /var/backups/svn.tmp
+
+## the hotbackup program to use.
+# HOTBACKUP = /usr/lib/subversion/hot-backup.py
+
+## the name of the vserver containing svn, if using vservers
+# vsname = \ No newline at end of file
diff --git a/docs/examples/example.sys b/docs/examples/example.sys
new file mode 100644
index 0000000..9ebd4b2
--- /dev/null
+++ b/docs/examples/example.sys
@@ -0,0 +1,32 @@
+#
+# this config file will save various reports of vital system information.
+# by default, all the reports are enabled and are saved in /var/backups.
+#
+# requires dpkg, sfdisk, and hwinfo
+#
+# (1) a list of all the packages installed and removed.
+# this file can be used to restore the state of installed packages
+# by running "dpkg --set-selections < dpkg-selections.txt
+#
+# (2) the partition table of all disks.
+# this partition table can be used to format another disk of
+# the same size. this can be handy if using software raid and
+# you have a disk go bad. just replace the disk and partition it
+# by running "sfdisk /dev/sdb < partitions.sdb.txt"
+# (MAKE SURE YOU PARTITION THE CORRECT DISK!!!)
+#
+# (3) hardware information.
+# detailed information on most important aspects of the hardware.
+#
+
+# here are the defaults, commented out:
+
+# packages = yes
+# packagesfile = /var/backups/dpkg-selections.txt
+
+# partitions = yes
+# partitionsfile = /var/backups/partitions.__star__.txt
+
+# hardware = yes
+# hardwarefile = /var/backups/hardware.txt
+
diff --git a/docs/examples/example.trac b/docs/examples/example.trac
new file mode 100644
index 0000000..645998e
--- /dev/null
+++ b/docs/examples/example.trac
@@ -0,0 +1,16 @@
+##
+## Perform backups of trac environment
+##
+## REQUIRES: apt-get install trac
+##
+## This file can be empty, the defaults are usually good.
+##
+
+## where one or more Trac environments live
+src = /var/lib/trac
+
+## where to save the backups to
+dest = /var/backups/trac
+
+## where to save temporary backups
+tmp = /var/backups/trac.tmp