---------------------------- revision 4.44 date: 2011/12/25 20:29:46; author: rhardy; state: Exp; lines: +4 -4 Update copy right dates. Major reliability improvements in db_mkrdiff. ---------------------------- revision 4.43 date: 2011/08/30 18:03:27; author: rhardy; state: Exp; lines: +5 -5 Cosmetic changes to dobackup.pl. Add db_mkrdiff.pl tool to dobackup package. ---------------------------- revision 4.42 date: 2008/08/20 19:30:48; author: rhardy; state: Exp; lines: +7 -5 Update for quiet chmod. ---------------------------- revision 4.41 date: 2008/07/31 19:39:47; author: rhardy; state: Exp; lines: +24 -13 Deal gracefully with missing ionice on el4. ---------------------------- revision 4.40 date: 2008/07/31 18:20:39; author: rhardy; state: Exp; lines: +5 -5 Make some debugging statements only print when $Debug is enabled. ---------------------------- revision 4.39 date: 2008/07/31 17:46:09; author: rhardy; state: Exp; lines: +8 -6 Make dobackup more friendly for non-root NFS as per Russell Odom's suggestions. ---------------------------- revision 4.38 date: 2008/07/31 16:37:58; author: rhardy; state: Exp; lines: +25 -4 Update dobackup.pl to be nice/ionice. ---------------------------- revision 4.37 date: 2006/11/23 15:58:34; author: imorgan; state: Exp; lines: +6 -6 Dang. Copy/paste error. Fixed variable name. ---------------------------- revision 4.36 date: 2006/11/23 15:48:07; author: imorgan; state: Exp; lines: +6 -5 Switch from LS to DU to calculate backup size to handle cases where archiver creates multiple output files instead of just one. ---------------------------- revision 4.35 date: 2006/03/07 17:31:37; author: imorgan; state: Exp; lines: +20 -12 Add MediaSet config item IgnoreFreeSpace. For some NFS-based destinations where the destination directory is really a submount on the server, the actual free space cannot be reliably found, so don't issue warnings about insufficient free space for subsequent backups when this flag is set. ---------------------------- revision 4.34 date: 2005/05/31 18:08:01; author: imorgan; state: Exp; lines: +42 -5 Added the --setauto command line argument to set, unset, or toggle the state of the automatic backup flag for a given host. ---------------------------- revision 4.33 date: 2004/04/02 13:33:14; author: imorgan; state: Exp; lines: +5 -5 Change df's -B to --block-size= for old Debian compatibility. ---------------------------- revision 4.32 date: 2004/03/16 17:52:04; author: imorgan; state: Exp; lines: +5 -4 Don't count full backups against LastSize. ---------------------------- revision 4.31 date: 2004/03/08 13:06:54; author: imorgan; state: Exp; lines: +4 -4 Bugfix from Darko Koruga : Change '1536000' (~18 days) to the correct '31536000' (365 days). ---------------------------- revision 4.30 date: 2004/03/05 15:56:13; author: imorgan; state: Exp; lines: +5 -5 Dumb thinko for disk space checking (off by 1000x) ---------------------------- revision 4.29 date: 2004/03/03 18:52:23; author: imorgan; state: Exp; lines: +91 -28 Clean up ugly over-use of temp variables to make code more readable. Add tracking of recent backup sizes, and issue warnings if there's not enough space for further incremental or full backups to occur. Create any new config items that don't exist in the config file. ---------------------------- revision 4.28 date: 2004/01/09 23:16:52; author: imorgan; state: Exp; lines: +11 -11 Updated copyright date, email addresses and URLs. Updated some default subcommand options. ---------------------------- revision 4.27 date: 2004/01/09 22:50:21; author: imorgan; state: Exp; lines: +42 -61 Make sure directories are backed up, not just the files in them. Associated code cleanup and commenting. ---------------------------- revision 4.26 date: 2003/10/05 16:29:56; author: imorgan; state: Exp; lines: +5 -5 Changed an '!=' to an 'ne' in the ejection code. ---------------------------- revision 4.25 date: 2003/08/01 05:34:02; author: imorgan; state: Exp; lines: +14 -8 Append error log to output before aborting backup due to error. ---------------------------- revision 4.24 date: 2003/07/26 05:34:53; author: imorgan; state: Exp; lines: +8 -6 Don't try to eject the media if the Eject command is unset in the config file. ---------------------------- revision 4.23 date: 2003/02/03 00:51:35; author: imorgan; state: Exp; lines: +4 -3 Force filelist to be build RAW. i.e. NO UTF-8 encoding! ---------------------------- revision 4.22 date: 2002/12/03 17:24:37; author: imorgan; state: Exp; lines: +9 -9 Stat broken links and apply same CTime comparison as for regular files. ---------------------------- revision 4.21 date: 2002/08/16 05:57:51; author: imorgan; state: Exp; lines: +45 -6 -Added new 'timewarp' backup mode -Tag archive files with .full, .incr, or .warp ---------------------------- revision 4.20 date: 2002/07/15 05:32:09; author: imorgan; state: Exp; lines: +6 -6 branches: 4.20.2; Fix hosed debug-related output after a BackupProg error. ---------------------------- revision 4.19 date: 2002/07/15 05:02:52; author: imorgan; state: Exp; lines: +6 -6 Switch from obsolete IniConf to Config::IniFiles. ---------------------------- revision 4.18 date: 2002/07/09 08:55:31; author: imorgan; state: Exp; lines: +11 -4 - Really make reports use base-2 values - Make reports use proper SI information units (KiB, MiB vs k, M etc..) ---------------------------- revision 4.17 date: 2002/07/09 08:19:01; author: imorgan; state: Exp; lines: +40 -21 -Fixed spelling mistakes. -Fixed options processing. Some options were being totally ignored. -Added functionality for the --timestamp option that seems to have never been implemented before now!?!? -Fixed --timestamp option take an INTEGER instead of a REAL. -Added --fullbackup option to the usage output. ---------------------------- revision 4.16 date: 2002/06/29 22:47:43; author: rhardy; state: Exp; lines: +22 -65 Updates to switch over from using Getopt::Mixed to Getopt::Long. ---------------------------- revision 4.15 date: 2002/06/12 05:55:37; author: imorgan; state: Exp; lines: +5 -5 Changed stupid ls -H (base 10) to -h (base 2) for sane reporting. ---------------------------- revision 4.14 date: 2002/06/03 17:56:11; author: imorgan; state: Exp; lines: +207 -197 Changed all old my()'s into our()'s, and fixed broken "$::" references. Removed some obsolete and unused globals. ---------------------------- revision 4.13 date: 2002/03/28 18:06:01; author: imorgan; state: Exp; lines: +5 -5 Fix for Tape mode global reference typo. ---------------------------- revision 4.12 date: 2002/03/28 17:38:20; author: imorgan; state: Exp; lines: +19 -14 - Clarified some error and warning messages - Fixed email report to work in Tape mode ---------------------------- revision 4.11 date: 2001/12/03 15:55:35; author: imorgan; state: Exp; lines: +10 -9 Add missing "-f device" to most instances of mt. Strip output of mt tell to just the block number before writing to config. ---------------------------- revision 4.10 date: 2001/12/02 21:11:52; author: imorgan; state: Exp; lines: +41 -24 Fixed bug where a missing Excludes section would break the whole backup. ---------------------------- revision 4.9 date: 2001/12/02 07:13:10; author: imorgan; state: Exp; lines: +5 -5 Make warnings related to bogus .nobackup files always print, not just in debug mode. ---------------------------- revision 4.8 date: 2001/12/02 06:34:40; author: imorgan; state: Exp; lines: +8 -6 Substitute ls's -H with --si to eliminate deprecation warning on some systems with newer fileutils package. ---------------------------- revision 4.7 date: 2001/11/25 08:39:31; author: imorgan; state: Exp; lines: +54 -12 Added some missing pre-flight checks. Vastly improved email report. ---------------------------- revision 4.6 date: 2001/11/25 04:14:07; author: imorgan; state: Exp; lines: +23 -5 Added Auto=(0|1) per-host option. ---------------------------- revision 4.5 date: 2001/11/24 22:52:04; author: imorgan; state: Exp; lines: +81 -25 Fix option stripping on BackupProg(Debug)? during path tests Move Exclusion patterns to config file (per host) Make .nobackup files smart (one pattern per line) Fix some debugging output ---------------------------- revision 4.4 date: 2000/07/03 16:44:09; author: imorgan; state: Exp; lines: +3 -3 Fixed operator bug in media rotation code. ---------------------------- revision 4.3 date: 2000/06/11 08:05:48; author: imorgan; state: Exp; lines: +17 -2 -added email notification of exactly what needs to be done when a MediaUnit needs to be changed, i.e. after --rotate option is used. ---------------------------- revision 4.2 date: 2000/06/11 07:28:27; author: imorgan; state: Exp; lines: +43 -74 -Split out description into separate documentation files. There's now a README.1ST, README, TODO, and CHANGELOG -update built-in defaults to be more generic and system-independent -fixed some misleading comments in the code -clarified some debugging output -produced a sample config file for the distribution -build website to host documentation, faq's, and downloads -setup email for contacting the maintainers (us!): dobackup@webcon.net ---------------------------- revision 4.1 date: 2000/05/31 03:25:25; author: rhardy; state: Exp; lines: +68 -36 -First release under GPL license. -Updated program description and added more comments. -Switched afio backup filename to use human readable datestamp instead of using number of seconds since the Epoch (00:00:00 UTC, January 1, 1970) -Updated date formats used in BackupDay to use a 4 digit year. -Removed very rare possibility that under extreme load the software may report & use a timestamp which is slight newer than the reported human readable version (by at most a few seconds). -Removed partially implemented compressionlevel commandline & config file support this should be handled by directly manipulating the BackupProg config file entry. This may make this version incompatible with v3 release. Simply delete the compressionlevel lines from your config file. -Updated todo list ---------------------------- revision 3.12 date: 2000/02/07 06:23:21; author: imorgan; state: Exp; lines: +9 -6 Fix typo. Fix security bug re: globally readable files. Added UMASK variable to config file. ---------------------------- revision 3.11 date: 2000/01/09 22:00:12; author: imorgan; state: Exp; lines: +46 -40 Fixed rotation warnings. This highlighted some logic flaws, so the rotation code now checks for Filesystem mode on a per MediaUnit basis. ---------------------------- revision 3.10 date: 1999/11/21 14:00:46; author: rhardy; state: Exp; lines: +3 -3 Added Host to subject line of cron email. ---------------------------- revision 3.9 date: 1999/11/11 22:36:04; author: rhardy; state: Exp; lines: +14 -7 Updated to handle empty directories and not follow links. ---------------------------- revision 3.8 date: 1999/11/08 17:09:26; author: rhardy; state: Exp; lines: +17 -11 Fixed handling of broken links. Always backs up broken links. ---------------------------- revision 3.7 date: 1999/08/16 17:30:50; author: imorgan; state: Exp; lines: +63 -35 Added support for Filesystem mode. Fixed so symlinks are only backed up if the file it points to is changed. ---------------------------- revision 3.6 date: 1998/04/15 20:02:56; author: imorgan; state: Exp; lines: +12 -11 fixed to allow --rotate with --test ---------------------------- revision 3.5 date: 1998/03/13 13:46:26; author: imorgan; state: Exp; lines: +14 -7 Fixes to the Exclude expresions ---------------------------- revision 3.4 date: 1998/02/19 07:46:18; author: rhardy; state: Exp; lines: +3 -3 Fixed typo in array reference. ---------------------------- revision 3.3 date: 1998/02/18 00:12:09; author: imorgan; state: Exp; lines: +327 -106 Host independant logs, dont rewind tape between hosts, added --rotate option to eject media and update config for next media, added new variable to config file to know when a disk needs to be auto-prepped. added vars to config to handle formatting of the media (device, and formatter) THERE SHOULD NOW BE NOTHING TO DO BUT SWAP THE DISKS! ---------------------------- revision 3.2 date: 1998/01/05 07:40:00; author: rhardy; state: Exp; lines: +99 -13 Updated to verify existance of most tools needed to perform a backup. Changed BackupDay variable to include time to allow for multiple backups to occur in the same day. Noticed that the logs get overwritten during the backup process as each host gets processed. Noticed tape restarts at 0 for each host that is to be backed up, overwritting the previous host in the process. Made more changes to bring script closer to having functional tape based backups again. ---------------------------- revision 3.1 date: 1998/01/05 07:36:21; author: rhardy; state: Exp; lines: +577 -295 Merged branches into main stream. This is the latest working disk version. Currently in production on bewnoc. ---------------------------- revision 2.18 date: 1997/09/19 01:07:44; author: imorgan; state: Exp; lines: +4 -4 more changes ---------------------------- revision 2.17 date: 1997/09/19 00:49:13; author: imorgan; state: Exp; lines: +161 -151 severe chanes for Jaz Disk ---------------------------- revision 2.16 date: 1997/05/25 19:44:56; author: rhardy; state: Exp; lines: +4 -3 branches: 2.16.1; Temporary version with Linux disabled. Need Host independance. ---------------------------- revision 2.15 date: 1997/04/13 01:10:24; author: rhardy; state: Exp; lines: +3 -3 Fixed Typo. ---------------------------- revision 2.14 date: 1997/04/11 21:31:30; author: rhardy; state: Exp; lines: +9 -4 Updated to delete bad backup stamps. ---------------------------- revision 2.13 date: 1997/04/08 19:17:35; author: rhardy; state: Exp; lines: +5 -4 Updated to handle mt tell failure more gracefully. ---------------------------- revision 2.12 date: 1997/04/08 15:48:05; author: rhardy; state: Exp; lines: +21 -6 Identified need to handle I/O errors from mt tell command. Reason for error unknown. Makes it to end of backup but gives error when you try to do a tell. ---------------------------- revision 2.11 date: 1997/04/07 03:59:20; author: rhardy; state: Exp; lines: +6 -4 Updated to handle empty variables in special cases more gracefully. ---------------------------- revision 2.10 date: 1997/03/31 17:04:18; author: rhardy; state: Exp; lines: +4 -5 Fixed Typo in Debugging Section. ---------------------------- revision 2.9 date: 1997/03/31 16:59:54; author: rhardy; state: Exp; lines: +3 -2 Update ---------------------------- revision 2.8 date: 1997/03/31 16:54:53; author: rhardy; state: Exp; lines: +3 -3 Update ---------------------------- revision 2.7 date: 1997/03/31 16:47:31; author: rhardy; state: Exp; lines: +7 -2 Versioning Update. ---------------------------- revision 2.6 date: 1997/03/31 16:37:52; author: rhardy; state: Exp; lines: +90 -39 Updated version to fix many bugs, add commandline options and update comments. ---------------------------- revision 2.5 date: 1997/03/31 15:10:24; author: rhardy; state: Exp; lines: +124 -41 Updated to better handle errors and seek only when needed. Added more comments. Still needs more comments. ---------------------------- revision 2.4 date: 1997/03/29 20:45:55; author: rhardy; state: Exp; lines: +24 -17 More Fixes. ---------------------------- revision 2.3 date: 1997/03/29 19:40:22; author: rhardy; state: Exp; lines: +308 -54 Major Rewrite of Code. ---------------------------- revision 2.2 date: 1997/03/26 23:26:29; author: imorgan; state: Exp; lines: +12 -9 Updates patterns in comments. Nuked ctime.pl. Fixed unlink commands. ---------------------------- revision 2.1 date: 1997/03/25 21:29:47; author: rhardy; state: Exp; lines: +86 -45 Development Version ---------------------------- revision 1.1 date: 1997/03/25 18:56:40; author: root; state: Exp; branches: 1.1.1; Initial revision ---------------------------- revision 1.1.1.2 date: 2000/07/03 16:41:25; author: imorgan; state: Exp; lines: +1195 -62 huh? what is this log? ---------------------------- revision 1.1.1.1 date: 1997/03/26 23:16:11; author: imorgan; state: Stab; lines: +8 -0 Added patterns to the program description. ---------------------------- revision 2.16.1.3 date: 1997/09/22 19:26:47; author: rhardy; state: Exp; lines: +53 -40 branches: 2.16.1.3.1; Updated to move option processing into it's own function. Config files are next. ---------------------------- revision 2.16.1.2 date: 1997/09/22 18:58:16; author: rhardy; state: Exp; lines: +96 -99 Implemented new options scheme. All option handling now complete. Still must implement functions and checks to work with options. ---------------------------- revision 2.16.1.1 date: 1997/09/21 21:49:05; author: rhardy; state: Exp; lines: +295 -188 This version is a first pass at incorporating Ian's Jaz hacks into a version compatible with both Tape and Jaz. Also this version starts to implement modifications for the new release of this script. Beta Material! ---------------------------- revision 2.16.1.3.1.7 date: 1997/11/24 16:40:45; author: imorgan; state: Exp; lines: +4 -3 another missed declaration. --test mode passes now. ---------------------------- revision 2.16.1.3.1.6 date: 1997/11/24 16:22:21; author: imorgan; state: Exp; lines: +4 -3 fix. missed a declaration, plus typo ---------------------------- revision 2.16.1.3.1.5 date: 1997/11/21 16:31:25; author: imorgan; state: Exp; lines: +38 -28 Fix to detect proper mediaunit before starting backup ---------------------------- revision 2.16.1.3.1.4 date: 1997/09/29 18:02:45; author: imorgan; state: Exp; lines: +6 -6 defaults for backupprog and backupprogdebug were backwards, more descriptive output after each hosts backup ---------------------------- revision 2.16.1.3.1.3 date: 1997/09/25 23:18:20; author: imorgan; state: Exp; lines: +6 -6 Added higher debugging levels during PrepareBackup ---------------------------- revision 2.16.1.3.1.2 date: 1997/09/25 23:15:45; author: imorgan; state: Exp; lines: +215 -184 Wow! it works. Still todo: autoswitch mediaunit when one is full ---------------------------- revision 2.16.1.3.1.1 date: 1997/09/24 20:49:29; author: imorgan; state: Exp; lines: +249 -117 made all external programs configurable, re-designed to handle MediaSets and Usage information. ---------------------------- revision 4.20.2.6 date: 2002/08/06 16:33:06; author: imorgan; state: Exp; lines: +15 -9 Don't tag files with .warp or .incr when already adding .full ---------------------------- revision 4.20.2.5 date: 2002/07/22 22:56:28; author: imorgan; state: Exp; lines: +5 -5 fix typo ---------------------------- revision 4.20.2.4 date: 2002/07/22 22:55:00; author: imorgan; state: Exp; lines: +8 -4 Fix timestamp in timewarp mode ---------------------------- revision 4.20.2.3 date: 2002/07/22 22:42:27; author: imorgan; state: Exp; lines: +7 -3 Added file extentions to report ---------------------------- revision 4.20.2.2 date: 2002/07/22 22:37:45; author: imorgan; state: Exp; lines: +5 -3 Add more debug output after reading config file ---------------------------- revision 4.20.2.1 date: 2002/07/22 22:28:50; author: imorgan; state: Exp; lines: +28 -5 Experimental Timewarp mode added. =============================================================================