fixed Trac #1, actually add example.rsync
authormicah <micah@758a04ac-41e6-0310-8a23-8373a73cc35d>
Sat, 24 Nov 2007 21:32:30 +0000 (21:32 +0000)
committermicah <micah@758a04ac-41e6-0310-8a23-8373a73cc35d>
Sat, 24 Nov 2007 21:32:30 +0000 (21:32 +0000)
git-svn-id: http://code.autistici.org/svn/backupninja/trunk@500 758a04ac-41e6-0310-8a23-8373a73cc35d

ChangeLog
examples/example.rsync [new file with mode: 0644]
examples/example.sys
handlers/sys.in

index 983341e28afde380bacd2e913d5b4ff4625b69eb..72c5923d75258dbb5b70200a361c9676847f3c1c 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -10,8 +10,8 @@ version 0.9.5 -- unreleased
           applied to fix #370396 broke this, especially for configuration files
           created with permissions 000 by an older ninjahelper version.
         . Enhanced portability for other platforms
-        . Fixed Trac#11 (quoting needed to prevent shell expansion, broke the
-           toint function sometimes)
+        . Added quoting because it was needed to prevent shell expansion, broking the
+           toint function sometimes (Trac#11)
         . Fixed reportspace option (Trac#10)
     handler changes
        dup:
@@ -61,6 +61,8 @@ version 0.9.5 -- unreleased
         . Fixed example in example.sys to detail the __star__ in partitionsfile and
           note why its necessary (Closes: #409192)
         . Force C locale for sfdisk to ensure english words are found in grep
+        . Make directory where output is placed configurable, and create the parent dir 
+          if it doesn't exist (Closes: Trac#1)
     fixed 'make install' bug that failed if /etc/backup.d already existed
     changed spaces to tabs in Makefile.am
     
diff --git a/examples/example.rsync b/examples/example.rsync
new file mode 100644 (file)
index 0000000..2902d0b
--- /dev/null
@@ -0,0 +1,124 @@
+#
+# rsync handler example file
+#
+# Mandatory options are uncommented with sugested values
+# Other options are commented out with their default values
+#
+# Note: You dont need to manually specify vservers using "include = /vservers".
+#       They're automatically backuped if vserver is set to "yes" on you backupninja.conf.
+
+[general]
+
+# rsync log file
+#log = /var/log/backup/rsync.log
+
+# partition device where the backup lives
+# just use this option if your data is backed up in a separate partition and
+# you want backupninja to fsck it; this option will just be used if fscheck
+# (see below) is set to 'yes'
+#partition = 
+
+# backup partition mountpoint or backup main folder
+# this doesn't need to be a real partition, but should be at least the
+# main folder where the backup is being stored
+mountpoint = /mnt/backup
+
+# folder relative do mountpoint where the backup should be stored
+backupdir = myserver
+
+# number of backup increments (min = 5)
+days = 7 
+
+# set to 1 if fsck should run on partition after the backup is made
+#fscheck = 
+
+# set to 1 if $partition is mounted read-only
+#read_only = 
+
+# use this if you need a lockfile to be kept during backup execution
+# this is an useful feature in case you have some tasks that should
+# know if the backup is running or not
+#lockfile = 
+
+# rsync command nice level
+#nicelevel = 0
+
+# set to "yes" if your system isnt handling timestamps correctly
+#enable_mv_timestamp_bug = no
+
+# temp folder
+#tmp = /tmp
+
+[source]
+
+# where the data to be backed up is (local or remote)
+#from = local
+
+# when "yes", test the connection for a remote source before backup
+#testconnect = no
+
+# include folder on backup
+include = /etc
+include = /var
+
+# exclude folder on backup
+exclude = exclude_folder1
+exclude = exclude_folder2
+
+# exlude some vserver from backup
+# this is used only if vservers = yes on backupninja.conf
+exclude_vserver = excluded_vserver1
+exclude_vserver = excluded_vserver2
+
+# ssh command line (remote only)
+#ssh = ssh
+
+# rsync program
+# it defaults to $RSYNC value from backupninja.conf
+#rsync = $RSYNC
+
+# rsync command options
+#rsync_options = "-av --delete"
+
+# when set to 1, use numeric ids instead of user/group mappings on rsync
+#numericids = 0
+
+# if set to 1, compress data on rsync (remote source only)
+#compress = 0
+
+# set a badnwidth limit in kbps (remote source only)
+#bandwidthlimit =
+
+# remote rsync program (remote source only)
+#remote_rsync = rsync
+
+# This section is used to stop and start services that should be turned of
+# during the backup procedure.
+#
+#[services]
+#
+# absolute path where scripts are located
+#initscripts =
+#
+# script name to be stoped at the begining of the backup and started at its end
+#service =
+
+# You can also specify some system comands if you don't want the default system values
+# by enabling the section below.
+#
+#[system]
+#
+# rm command
+#rm = rm
+#
+# cp command
+#cp = cp
+#
+# touch command
+#touch = touch
+#
+# mv command
+#mv = mv
+#
+# fsck command
+#fsck = fsck
index 2af2c50fc90b141f62bd47ccfb2e9865fc127b3a..908133479475b494881b7469dc02dd3f5a679a6d 100644 (file)
@@ -21,6 +21,8 @@
 
 # here are the defaults, commented out:
 
+# The output from the sys handler will be placed in $parentdir
+# parentdir = /var/backups
 # packages = yes
 # packagesfile = /var/backups/dpkg-selections.txt
 
index 2e181c85c2a27fba52f3441958eec01ea79bcd0b..b6c7fbcb4297417dcf3f3cf258a41ff6407cd1e2 100755 (executable)
@@ -32,35 +32,41 @@ else
    warning "Unknown OS detected!"
 fi
 
+getconf parentdir /var/backups
 getconf packages yes
 getconf dosfdisk yes
 getconf dohwinfo yes
+
+if [ ! -d $parentdir ]; then
+   mkdir -p $parentdir
+fi
+   
 if [ $os = "debian" ]
 then
-   getconf packagesfile /var/backups/dpkg-selections.txt
+   getconf packagesfile $parentdir/dpkg-selections.txt
    getconf packagemgr   `which dpkg`
    getconf packagemgroptions ' --get-selections *'
 elif [ $os = "redhat" ]
 then
-   getconf packagesfile  /var/backups/rpmpackages.txt 
+   getconf packagesfile  $parentdir/rpmpackages.txt 
    getconf packagemgr  `which rpm`
    getconf packagemgroptions   ' -qa '
 
    getconf SYSREPORT `which sysreport`
    getconf sysreport_options ' -norpm '
 else
-   getconf packagesfile /var/backups/unknownOS.txt
+   getconf packagesfile $parentdir/unknownOS.txt
 fi
 packagemgroptions="${packagemgroptions//__star__/*}"
 
 getconf partitions yes
-getconf partitionsfile /var/backups/partitions.__star__.txt
+getconf partitionsfile $parentdir/partitions.__star__.txt
 
 getconf hardware yes
-getconf hardwarefile /var/backups/hardware.txt
+getconf hardwarefile $parentdir/hardware.txt
 
 getconf sysreport yes
-getconf sysreportfile /var/backups/sysreport.txt
+getconf sysreportfile $parentdir/sysreport.txt
 
 getconf SFDISK `which sfdisk`
 getconf HWINFO `which hwinfo`