diff options
| -rw-r--r-- | docs/README | 256 | ||||
| -rw-r--r-- | docs/changelog | 165 | ||||
| -rw-r--r-- | examples/example.dup (renamed from docs/examples/example.dup) | 0 | ||||
| -rw-r--r-- | examples/example.ldap (renamed from docs/examples/example.ldap) | 0 | ||||
| -rw-r--r-- | examples/example.makecd (renamed from docs/examples/example.makecd) | 0 | ||||
| -rw-r--r-- | examples/example.mysql (renamed from docs/examples/example.mysql) | 0 | ||||
| -rw-r--r-- | examples/example.pgsql (renamed from docs/examples/example.pgsql) | 0 | ||||
| -rw-r--r-- | examples/example.rdiff (renamed from docs/examples/example.rdiff) | 0 | ||||
| -rw-r--r-- | examples/example.sh (renamed from docs/examples/example.sh) | 0 | ||||
| -rw-r--r-- | examples/example.svn (renamed from docs/examples/example.svn) | 0 | ||||
| -rw-r--r-- | examples/example.sys (renamed from docs/examples/example.sys) | 0 | ||||
| -rw-r--r-- | examples/example.trac (renamed from docs/examples/example.trac) | 0 | 
12 files changed, 0 insertions, 421 deletions
diff --git a/docs/README b/docs/README deleted file mode 100644 index 849fe3a..0000000 --- a/docs/README +++ /dev/null @@ -1,256 +0,0 @@ - -                                          |\_ -                 B A C K U P N I N J A   /()/ -                                         `\| -                          -      a silent flower blossom death strike to lost data. - -Backupninja allows you to coordinate system backup by dropping a few -simple configuration files into /etc/backup.d/. Most programs you -might use for making backups don't have their own configuration file -format. Backupninja provides a centralized way to configure and -coordinate many different backup utilities.  - -Features: - - easy to read ini style configuration files. - - you can drop in scripts to handle new types of backups. - - backup actions can be scheduled - - you can choose when status report emails are mailed to you -   (always, on warning, on error, never). - - console-based wizard (ninjahelper) makes it easy to create -   backup action configuration files. - - passwords are never sent via the command line to helper programs. - - works with Linux-Vservers (http://linux-vserver.org/) -  -Backup types: - - secure, remote, incremental filesytem backup (via rdiff-backup). -   incremental data is compressed. permissions are retained even -   with an unpriviledged backup user. - - backup of mysql databases (via mysqlhotcopy and mysqldump). - - backup of ldap databases (via slapcat and ldapsearch). - - basic system and hardware info - - encrypted remote backups (via duplicity).     - - backup of subversion repositories. - -The following options are available: --h, --help           This usage message --d, --debug          Run in debug mode, where all log messages are -                     output to the current shell. --f, --conffile FILE  Use FILE for the main configuration instead -                     of /etc/backupninja.conf --t, --test           Test run mode. This will test if the backup could run, without actually -                     preforming any backups. For example, it will attempt to authenticate -                     or test that ssh keys are set correctly. --n, --now            Perform actions now, instead of when they might be scheduled. -                     No output will be created unless also run with -d. ---run FILE           Runs the specified action FILE (e.g. one of the /etc/backup.d/ files). -                     Also puts backupninja in debug mode. - -CONFIGURATION FILES -=================== - -The general configuration file is /etc/backupninja.conf. In this file -you can set the log level and change the default directory locations. -You can force a different general configuration file with "backupninja --f /path/to/conf". - -To preform the actual backup, backupninja processes each configuration -file in /etc/backup.d according to the file's suffix: -  -  .sh      --  run this file as a shell script. -  .rdiff   --  filesystem backup (using rdiff-backup) -  .dup     --  filesystem backup (using duplicity) -  .mysql   --  backup mysql databases -  .ldap    --  backup ldap databases -  .pgsql   --  backup PostgreSQL databases -  .sys     --  general hardware, partition, and system reports. -  .svn     --  backup subversion repositories -  .maildir --  incrementally backup maildirs (very specialized) - -Support for additional configuration types can be added by dropping -bash scripts with the name of the suffix into /usr/share/backupninja.  - -The configuration files are processed in alphabetical order. However, -it is suggested that you name the config files in "sysvinit style."  - -For example: -	00-disabled.ldap -	10-runthisfirst.sh -	20-runthisnext.mysql -	90-runthislast.rdiff - -Typically, you will put a '.rdiff' config file last, so that any -database dumps you make are included in the filesystem backup. -Configurations files with names beginning with 0 (zero) or ending with -.disabled (preferred method) are skipped. - -Unless otherwise specified, the config file format is "ini style." - -For example: - -   # this is a comment -    -   [fishes] -   fish = red -   fish = blue - -   [fruit] -   apple = yes -   pear = no thanks \ -   i will not have a pear. - - -SCHEDULING -========== - -By default, each configuration file is processed everyday at 01:00 (1 -AM). This can be changed by specifying the 'when' option in a config -file. - -For example: - -  when = sundays at 02:00 -  when = 30th at 22 -  when = 30 at 22:00 -  when = everyday at 01            <-- the default -  when = Tuesday at 05:00 - -A configuration file will be processed at the time(s) specified by the -"when" option. If multiple "when" options are present, then they all -apply. If two configurations files are scheduled to run in the same -hour, then we fall back on the alphabetical ordering specified above. -If two configurations files are scheduled close to one another in -time, it is possible to have multiple copies of backupninja running if -the first instance is not finished before the next one starts. - -Make sure that you put the "when" option before any sections in your -configuration file. - -These values for 'when' are equivalent: - -  when = tuesday at 05:30 -  when = TUESDAYS at 05 - -These values for 'when' are invalid: -   -  when = tuesday at 2am -  when = tuesday at 2 -  when = tues at 02 - - -REAL WORLD USAGE -================ - -Backupninja can be used to implement whatever backup strategy you -choose. It is intended, however, to be used like so: - -(1) First, databases are safely copied or exported to /var/backups. -    Typically, you cannot make a file backup of a database while it -    is in use, hence the need to use special tools to make a safe copy -    or export into /var/backups. -      -(2) Then, vital parts of the file system, including /var/backups, are -    nightly pushed to a remote, off-site, hard disk (using -    rdiff-backup). The local user is root, but the remote user is not -    priviledged. Hopefully, the remote filesystem is encrypted.  - -There are many different backup strategies out there, including "pull -style", magnetic tape, rsync + hard links, etc. We believe that the -strategy outlined above is the way to go because: (1) hard disks are -very cheap these days, (2) pull style backups are no good, because then -the backup server must have root on the production server, and (3) -rdiff-backup is more space efficient and featureful than using rsync + -hard links.  - - -SSH KEYS -======== - -In order for rdiff-backup to sync files over ssh unattended, you must -create ssh keys on the source server and copy the public key to the -remote user's authorized keys file. For example: - -  root@srchost# ssh-keygen -t dsa -  root@srchost# ssh-copy-id -i /root/.ssh/id_dsa.pub backup@desthost  - -Now, you should be able to ssh from user 'root' on srchost to -user 'backup' on desthost without specifying a password. - -Note: when prompted for a password by ssh-keygen, just leave it -blank by hitting return. - -The included helper program "ninjahelper" will walk you through creating -an rdiff-backup configuration, and will set up the ssh keys for you. - -INSTALLATION -============ -    -Requirements: -  apt-get install bash gawk - -Recommended:  -  apt-get install rdiff-backup gzip hwinfo - -Files: -  /usr/sbin/backupninja        -- main script -  /etc/cron.d/backupninja      -- runs main script nightly -  /etc/logrotate.d/backupninja -- rotates backupninja.log -  /etc/backup.d/               -- directory for configuration files -  /etc/backupninja.conf        -- general options  -  /usr/share/backupninja       -- handler scripts which do the actual work - -Installation: -  There is no install script, but you just need to move files to the -  correct locations. All files should be owned by root. -  -  # tar xvzf backupninja.tar.gz -  # cd backupninja -  # mv backupninja /usr/sbin/backupninja -  # mv ninjahelper /usr/sbin/ninjahelper -  # mv etc/logrotate.d/backupninja /etc/logrotate.d/backupninja -  # mv etc/cron.d/backupninja /etc/cron.d/backupninja -  # 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}'`) - -NINJAHELPER -=========== - -Ninjahelper is an additional script which will walk you through the process of -configuring backupninja. Ninjahelper has a menu driven curses based interface -(using dialog).  - -To add an additional 'wizard' to ninjahelper, follow these steps: - -(1) to add a helper for the handler "blue", create the file -    blue.helper in the directory where the handlers live. -    (ie /usr/share/backupninja). - -(2) next, you need to add your helper to the global HELPERS variable -    and define the main function for your helper (the function name -    is always <helper>_wizard). for example, blue.helper: -       HELPERS="$HELPERS blue:description_of_this_helper" -       blue_wizard() { -         ... do work here ... -       } - -(3) check the examples of the included helpers to see how they are -    written. The dialog functions are defined in easydialog.sh. - diff --git a/docs/changelog b/docs/changelog deleted file mode 100644 index 04b6181..0000000 --- a/docs/changelog +++ /dev/null @@ -1,165 +0,0 @@ -version 0.9.1 -	fixed many bugs in rdiff helper -	rdiff handler does not require 'label' - -version 0.9 -- October 19 2005 -	*** IMPORTANT CHANGE, UPGRADE AT ONCE *** -	 fixed insecure temporary file creation  -	***************************************** -	removed erroneous magic file marker in pgsql handler -	fixed incorrect find positional -	changed direct grep of /etc/passwd to getent passwd. -	rdiff helper has much better information on failed ssh attempt -		(patch from cmccallum@thecsl.org). -	rdiff handler now supports remote source and local dest.  -		(patch from cmccallum@thecsl.org). -	man pages are greatly improved. - -version 0.8 -- September 15 2005 -	added pgsql (PostgreSQL) handler, with vservers support. -	added vservers support to duplicity handler -		Note: the configuration is a bit different than the rdiff -		handler's one, but the default behavior is the same: -		have a look at example.dup. -	improved README -	documented .disabled method. -	corrected VROOTDIR default value. -	added ninjahelper to the install instructions. -	improved rdiff, dup and sys handlers' vservers support -		prevent vserver-debiantools' $VROOTDIR/ARCHIVES directory -		to be seen as a vserver -	changes to sys handler -		make use of configurable $VSERVERINFO instead of hard-coded vserver-info. -		fixed dpkg existence test inside vserver. -		fixed $nodpkg use. -	changes to pgsql handler -		now checks if the specified vserver is running. -		now checks if $PGSQLDUMP/$PGSQLDUMPALL are available where needed. -		now checks if "postgres" user exists on the host/vserver. -	changes to ninjahelper -		check_perms() does not die anymore on group/world readable -	helper scripts (now consistent with the "helper scripts -		must not be group or world writable!" error msg). -	xedit action now tries $EDITOR, then /etc/alternatives/editor, -		then nano, vim and vi, and aborts if none of these exists. -	added helper for pgsql handler. -	rdiff handler now does not require 'label' -	changes to mysql and svn handlers' vservers support -		these handlers now check if the source vserver is running -	added 'ignores' for mysql handler. (thanks Daniel.Bonniot@inria.fr) - -version 0.7 -- July 26 2005 -	added ninjahelper: a dialog based wizard for creating backupninja configs. -	considerably improved and changed the log file output. -	you can now disable actions with .disabled (this is new preferred method). -	added makecd handler and example.makecd for backing up to cd/dvd (thanks stef). -	fixed bug when specifying multiple 'when' options. - -version 0.6 -- June 16 2005 -	ldap handler has new options: backup method to use (ldapsearch or -		slapcat), restart, passwordfile and binddn. Default backup method -		is set to ldapsearch as this is safer -	****************************************************************** -	NOTE: to get the previous default behavior with the ldap handler,  -	you must set "method = slapcat". The new default is ldapsearch. -	****************************************************************** -	implemented fix so that the main script will echo fatal errors rather -		than being silent about them, this means an error message every hour -		if there is a major configuration problem (not a handler problem) -	added vserver support to main script and to the handlers: mysql, svn, sys, rdiff -	changes to duplicity handler (thanks intrigeri!): -		"keep = yes" now disables file cleaning on desthost -		added "sign" option for backups signing -		added "encryptkey" option to specify the gpg key to use -		split config into [source], [gpg] and [dest] sections -		added "nicelevel" option -		added "testconnect" option -		added "sshoptions" option (will be passed to ssh/scp) -		added "bandwidthlimit" option -	example.dup example config file for duplicity handler  -	added trac (http://trac.edgewall.com/) environment handler (thanks Charles Lepple!) -	added configfile option to mysql handler -		the default is /etc/mysql/debian.cnf. with this,  -		sqldump doesn't need dbusername. (hotcopy still does). -	fixed bug in mysql handler which caused some passwords to not work. -		(.my.cnf files now have double quotes around password) -	can now pass options to hwinfo and sfdisk in sys handler. - -version 0.5 -- April 12 2005 -	rdiff handler works when remote sshd has a banner -	rdiff handler supports local dest  -	logfile is created if it doesn't exist -	added "when = hourly"  -	added optional 'nicelevel' to rdiff handler -	fixed bug where actions were not run in numeric order. -	improved 'when' parsing. - -version 0.4.4 -- March 18 2005 -	results of handlers are now read line by line.  -	changes to rdiff handler: added "options", and "keep" is -		not necessarily days now (ie, it will pass straight through to -		rdiff-backup if the keep has a unit on it, otherwise it adds the 'D'). -	added dup handler (still pretty beta) -	added maildir handler (very specialized handler) -	added --run option (runs the specified action file) -	improved sys handler, now uses hwinfo -	added subversion hotbackup handler, svn.  -	added PATH to cron.d file, which fixes file not found errors. - -version 0.4.2 -- Jan 6 2005 -	fixed bug which caused a report email to be sent even if no actions were run. -	fixed bug where multiple handler status messages were ignored -	added status in the subject line of report emails - -version 0.4.1 -- Jan 3 2005 -	added $usecolors and now more conservative about when colors are echoed. -	fixed major bug, 'when' actually works now. -	replaced debug function with debug, info, warning, error, fatal. -	added --now option to force all actions to be performed now. -	 -version 0.4 -- Dec 26 2004 -	added "when" option, so that all configs can specify when -		they are to be run. -	added reportsuccess and reportwarning config options -	added .sys handler (hardware, packages, partitions). - -version 0.3.4 -- Dec 8 2004 -	fixed numerical variable quoting compatibility with older wc	 -	fixed stderr redirect bug -	some comments in example.rdiff - -version 0.3.3 -- Nov 10 2004 -	'*' (asterisk) works now in rdiff config files -	works now with gawk as well as mawk -	many bug fixes to ldap handler -	paths to helper scripts can be configured in global config -	does not require /usr/bin/stat - -version 0.3.2 -- Sept 29 2004 -	handler scripts are no longer executable (to comply with debian policy) -	handler error and warning messages are sent with the notify email - -version 0.3.1 -- Sept 5 2004 -	added ldap handler -	moved sh support to a handler script -	add test mode, where no action is taken. -	added --help -	force only root can read /etc/backup.d/* -	fixed missing equals symbols in example.rdiff -	changed backupninja executable to be /usr/sbin rather than /usr/bin -	 -version 0.3 -- Oct 20 2004 -	** IMPORTANT ** all config files are now ini style, not apache style -	rewrote all scripts in bash for portability -	added drop-in backupninja lib directory (/usr/share/backupninja) -	all scripts are now run as root - -version 0.2 -- Oct 14 2004 -	move distribution folder ./cron.d to ./etc/cron.d -	fixed bug: removed printr of excludes (!) -	added support for changing the user/group in rdiff sources. -	added support for .mysql config files. -	 -version 0.1 -- Oct 8 2004 -	initial release  - diff --git a/docs/examples/example.dup b/examples/example.dup index 7db7771..7db7771 100644 --- a/docs/examples/example.dup +++ b/examples/example.dup diff --git a/docs/examples/example.ldap b/examples/example.ldap index adc1fcd..adc1fcd 100644 --- a/docs/examples/example.ldap +++ b/examples/example.ldap diff --git a/docs/examples/example.makecd b/examples/example.makecd index b01094e..b01094e 100644 --- a/docs/examples/example.makecd +++ b/examples/example.makecd diff --git a/docs/examples/example.mysql b/examples/example.mysql index 51c2247..51c2247 100644 --- a/docs/examples/example.mysql +++ b/examples/example.mysql diff --git a/docs/examples/example.pgsql b/examples/example.pgsql index d9aab42..d9aab42 100644 --- a/docs/examples/example.pgsql +++ b/examples/example.pgsql diff --git a/docs/examples/example.rdiff b/examples/example.rdiff index 8878ad0..8878ad0 100644 --- a/docs/examples/example.rdiff +++ b/examples/example.rdiff diff --git a/docs/examples/example.sh b/examples/example.sh index f02f026..f02f026 100644 --- a/docs/examples/example.sh +++ b/examples/example.sh diff --git a/docs/examples/example.svn b/examples/example.svn index e849706..e849706 100644 --- a/docs/examples/example.svn +++ b/examples/example.svn diff --git a/docs/examples/example.sys b/examples/example.sys index 9ebd4b2..9ebd4b2 100644 --- a/docs/examples/example.sys +++ b/examples/example.sys diff --git a/docs/examples/example.trac b/examples/example.trac index 645998e..645998e 100644 --- a/docs/examples/example.trac +++ b/examples/example.trac  | 
