mirror of
https://0xacab.org/liberate/backupninja.git
synced 2024-09-19 23:21:40 +02:00
Added trac handler, changed VSERVERS variable to be lowercase and
added some vserver documentation to README and to the handlers
This commit is contained in:
parent
5c87458754
commit
d52a1ac97e
20
README
20
README
@ -23,7 +23,7 @@ Features:
|
||||
- backup actions can be scheduled
|
||||
- you can choose when status report emails are mailed to you
|
||||
(always, on warning, on error, never).
|
||||
- works with linux-vservers
|
||||
- works with Linux-Vservers (http://linux-vserver.org/)
|
||||
|
||||
The following options are available:
|
||||
-h, --help This usage message
|
||||
@ -194,3 +194,21 @@ Installation:
|
||||
# mkdir /etc/backup.d/
|
||||
# mv etc/backupninja.conf /etc/backupninja.conf
|
||||
# mv handlers /usr/share/backupninja
|
||||
|
||||
|
||||
VSERVERS
|
||||
========
|
||||
|
||||
If you are using Linux-Vservers (http://linux-vserver.org/) there are some
|
||||
special capabilities that different handlers have to make vserver backups easier.
|
||||
Set the variable "vservers" to be "yes" in /etc/backupninja.conf and see the
|
||||
example configuration files for each handler to configure the vserver specific
|
||||
variables.
|
||||
|
||||
Additional vserver variables that can be configured in /etc/backupninja.conf. but
|
||||
probably don't need to be changed:
|
||||
|
||||
VSERVERINFO (default: /usr/sbin/vserver-info)
|
||||
VSERVER (default: /usr/sbin/vserver)
|
||||
VROOTDIR (default: `$VSERVERINFO info SYSINFO |grep vserver-Rootdir | awk '{print $2}'; fi`)
|
||||
|
||||
|
@ -70,4 +70,6 @@ compress = yes
|
||||
# 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.
|
||||
|
@ -41,6 +41,17 @@ 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
|
||||
|
@ -45,5 +45,5 @@ usecolors = yes
|
||||
when = everyday at 01:00
|
||||
|
||||
# if running vservers, set to yes
|
||||
VSERVERS = no
|
||||
vservers = no
|
||||
|
||||
|
@ -28,7 +28,7 @@ fi
|
||||
# If vservers are configured, decide if the handler should
|
||||
# use them or if it should just operate on the host
|
||||
|
||||
if [ "$VSERVERS" = "yes" ]
|
||||
if [ "$vservers" = "yes" ]
|
||||
then
|
||||
if [ ! -z $vsname ]
|
||||
then
|
||||
|
@ -26,7 +26,7 @@ getconf user; destuser=$user
|
||||
getconf host; desthost=$host
|
||||
|
||||
# See if vservers are configured
|
||||
if [ "$VSERVERS" = "yes" ]
|
||||
if [ "$vservers" = "yes" ]
|
||||
then
|
||||
if [ ! -d $VROOTDIR ]
|
||||
then
|
||||
|
@ -12,7 +12,7 @@ error=0
|
||||
|
||||
# If vservers are configured, decide if the handler should
|
||||
# use them or if it should just operate on the host
|
||||
if [ "$VSERVERS" = "yes" ]
|
||||
if [ "$vservers" = "yes" ]
|
||||
then
|
||||
if [ ! -z $vsname ]
|
||||
then
|
||||
|
@ -27,7 +27,7 @@ getconf hardware yes
|
||||
getconf hardwarefile /var/backups/hardware.txt
|
||||
|
||||
# See if vservers are configured
|
||||
if [ "$VSERVERS" = "yes" ]
|
||||
if [ "$vservers" = "yes" ]
|
||||
then
|
||||
if [ ! -d $VROOTDIR ]
|
||||
then
|
||||
|
51
handlers/trac
Normal file
51
handlers/trac
Normal file
@ -0,0 +1,51 @@
|
||||
#
|
||||
# this handler will backup trac environments (based on the svn handler)
|
||||
#
|
||||
# http://trac.edgewall.com/
|
||||
#
|
||||
|
||||
getconf src /var/lib/trac
|
||||
getconf dest /var/backups/trac
|
||||
getconf tmp /var/backups/trac.tmp
|
||||
|
||||
error=0
|
||||
cd $src
|
||||
for repo in `find . -name VERSION`
|
||||
do
|
||||
repo=`dirname $repo`
|
||||
|
||||
# Just make the $tmp dir, not $tmp/$repo
|
||||
ret=`mkdir -p $tmp 2>&1`
|
||||
code=$?
|
||||
if [ "$ret" ]; then
|
||||
debug "$ret"
|
||||
fi
|
||||
if [ $code != 0 ]; then
|
||||
error "command failed mkdir -p $tmp"
|
||||
fi
|
||||
|
||||
ret=`trac-admin $src/$repo hotcopy $tmp/$repo 2>&1`
|
||||
code=$?
|
||||
if [ "$ret" ]; then
|
||||
debug "$ret"
|
||||
fi
|
||||
if [ $code != 0 ]; then
|
||||
error "command failed -- trac-admin $src/$repo hotcopy $tmp/$repo"
|
||||
error=1
|
||||
fi
|
||||
done
|
||||
|
||||
if [ $error -eq 1 ]; then
|
||||
echo "Error: because of earlier errors, we are leaving trac backups in $tmp instead of $dest"
|
||||
else
|
||||
if [ -d $dest -a -d $tmp ]; then
|
||||
rm -rf $dest
|
||||
fi
|
||||
if [ -d $tmp ]; then
|
||||
mv $tmp $dest
|
||||
fi
|
||||
fi
|
||||
|
||||
exit 0
|
||||
|
||||
# vim: filetype=sh
|
Loading…
Reference in New Issue
Block a user