1 --- conf/config.pl.dist 2013-09-23 23:05:50.332064754 +0300
2 +++ conf/config.pl 2013-09-23 23:07:44.110943607 +0300
4 # Default value prevents any access from group other, and prevents
7 -$Conf{UmaskMode} = 027;
8 +$Conf{UmaskMode} = 27;
11 # Times at which we wake up, check all the PCs, and schedule necessary
13 # you want BackupPC_nightly to run (eg: when you don't expect a lot
14 # of regular backups to run).
16 -$Conf{WakeupSchedule} = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23];
17 +$Conf{WakeupSchedule} = [
44 # Maximum number of simultaneous backups to run. If there
46 # Full path to various commands for archiving
48 $Conf{SplitPath} = '';
51 -$Conf{GzipPath} = '';
54 +$Conf{GzipPath} = '';
55 $Conf{Bzip2Path} = '';
59 # a symbolic link to the new location, or mount the new BackupPC
60 # store at the existing $Conf{TopDir} setting.
65 -$Conf{InstallDir} = '';
70 +$Conf{InstallDir} = '';
74 # Whether BackupPC and the CGI script BackupPC_Admin verify that they
76 # BackupPC might be accidently started as root or the wrong user,
77 # or if the CGI script is not installed correctly.
79 -$Conf{BackupPCUserVerify} = 1;
80 +$Conf{BackupPCUserVerify} = '1';
83 # Maximum number of hardlinks supported by the $TopDir file system
85 # Advanced option for asking BackupPC to load additional perl modules.
86 # Can be a list (array ref) of module names to load at startup.
88 -$Conf{PerlModuleLoad} = undef;
89 +$Conf{PerlModuleLoad} = undef;
92 # Path to init.d script and command to use that script to start the
94 # needs to be a full path and you can't include shell syntax like
95 # redirection and pipes; put that in a script if you need it.
97 -$Conf{ServerInitdPath} = '';
98 +$Conf{ServerInitdPath} = undef;
99 $Conf{ServerInitdStartCmd} = '';
103 # time taken for the backup, plus the granularity of $Conf{WakeupSchedule}
104 # will make the actual backup interval a bit longer.
106 -$Conf{FullPeriod} = 6.97;
107 +$Conf{FullPeriod} = '6.97';
110 # Minimum period in days between incremental backups (a user requested
112 # time taken for the backup, plus the granularity of $Conf{WakeupSchedule}
113 # will make the actual backup interval a bit longer.
115 -$Conf{IncrPeriod} = 0.97;
116 +$Conf{IncrPeriod} = '0.97';
119 # Number of full backups to keep. Must be >= 1.
121 # $Conf{FullKeepCnt} = 4;
122 # $Conf{FullKeepCnt} = [4];
124 -$Conf{FullKeepCnt} = 1;
125 +$Conf{FullKeepCnt} = [
130 # Very old full backups are removed after $Conf{FullAgeMax} days. However,
132 # full backups to exceed $Conf{FullAgeMax}.
134 $Conf{FullKeepCntMin} = 1;
135 -$Conf{FullAgeMax} = 90;
136 +$Conf{FullAgeMax} = 90;
139 # Number of incremental backups to keep. Must be >= 1.
141 # matter how old they are.
143 $Conf{IncrKeepCntMin} = 1;
144 -$Conf{IncrAgeMax} = 30;
145 +$Conf{IncrAgeMax} = 30;
148 # Level of each incremental. "Level" follows the terminology
150 # meaning each incremental backed up all the files that
151 # changed since the last full.
153 -$Conf{IncrLevels} = [1];
154 +$Conf{IncrLevels} = [
159 # Disable all full and incremental backups. These settings are
161 # The default is off. You can turn this on or off at any
162 # time without affecting existing backups.
164 -$Conf{IncrFill} = 0;
165 +$Conf{IncrFill} = '0';
168 # Number of restore logs to keep. BackupPC remembers information about
170 # '*' => ['/myFiles', '/important'], # these are other shares
173 -$Conf{BackupFilesOnly} = undef;
174 +$Conf{BackupFilesOnly} = {};
177 # List of directories or files to exclude from the backup. For Smb,
179 # '*' => ['/junk', '/dont_back_this_up'], # these are for other shares
182 -$Conf{BackupFilesExclude} = undef;
183 +$Conf{BackupFilesExclude} = {};
186 # PCs that are always or often on the network can be backed up after
188 # to just set $Conf{WakeupSchedule} to a restricted schedule.
190 $Conf{BlackoutBadPingLimit} = 3;
191 -$Conf{BlackoutGoodCnt} = 7;
192 +$Conf{BlackoutGoodCnt} = 7;
195 # One or more blackout periods can be specified. If a client is
196 @@ -813,11 +841,17 @@
199 $Conf{BlackoutPeriods} = [
203 - weekDays => [1, 2, 3, 4, 5],
206 + 'hourEnd' => '19.5',
220 # backed up. If you have shares that might be empty (and therefore an
221 # empty backup is valid) you should set this flag to 0.
223 -$Conf{BackupZeroFilesIsFatal} = 1;
224 +$Conf{BackupZeroFilesIsFatal} = '1';
226 ###########################################################################
227 # How to backup a client
230 # This setting only matters if $Conf{XferMethod} = 'smb'.
232 -$Conf{SmbShareName} = 'C$';
233 +$Conf{SmbShareName} = [
238 # Smbclient share user name. This is passed to smbclient's -U argument.
240 # needs to be a full path and you can't include shell syntax like
241 # redirection and pipes; put that in a script if you need it.
243 -$Conf{SmbClientFullCmd} = '$smbClientPath \\\\$host\\$shareName'
244 - . ' $I_option -U $userName -E -d 1'
245 - . ' -c tarmode\\ full -Tc$X_option - $fileList';
246 +$Conf{SmbClientFullCmd} = '$smbClientPath \\\\$host\\$shareName $I_option -U $userName -E -d 1 -c tarmode\\ full -Tc$X_option - $fileList';
249 # Command to run smbclient for an incremental dump.
251 # needs to be a full path and you can't include shell syntax like
252 # redirection and pipes; put that in a script if you need it.
254 -$Conf{SmbClientIncrCmd} = '$smbClientPath \\\\$host\\$shareName'
255 - . ' $I_option -U $userName -E -d 1'
256 - . ' -c tarmode\\ full -TcN$X_option $timeStampFile - $fileList';
257 +$Conf{SmbClientIncrCmd} = '$smbClientPath \\\\$host\\$shareName $I_option -U $userName -E -d 1 -c tarmode\\ full -TcN$X_option $timeStampFile - $fileList';
260 # Command to run smbclient for a restore.
261 @@ -1007,9 +1039,7 @@
262 # needs to be a full path and you can't include shell syntax like
263 # redirection and pipes; put that in a script if you need it.
265 -$Conf{SmbClientRestoreCmd} = '$smbClientPath \\\\$host\\$shareName'
266 - . ' $I_option -U $userName -E -d 1'
267 - . ' -c tarmode\\ full -Tx -';
268 +$Conf{SmbClientRestoreCmd} = '$smbClientPath \\\\$host\\$shareName $I_option -U $userName -E -d 1 -c tarmode\\ full -Tx -';
270 ###########################################################################
272 @@ -1044,7 +1074,9 @@
274 # This setting only matters if $Conf{XferMethod} = 'tar'.
276 -$Conf{TarShareName} = '/';
277 +$Conf{TarShareName} = [
282 # Command to run tar on the client. GNU tar is required. You will
283 @@ -1088,9 +1120,7 @@
284 # needs to be a full path and you can't include shell syntax like
285 # redirection and pipes; put that in a script if you need it.
287 -$Conf{TarClientCmd} = '$sshPath -q -x -n -l root $host'
288 - . ' env LC_ALL=C $tarPath -c -v -f - -C $shareName+'
290 +$Conf{TarClientCmd} = '$sshPath -q -x -n -l root $host env LC_ALL=C $tarPath -c -v -f - -C $shareName+ --totals';
293 # Extra tar arguments for full backups. Several variables are substituted at
294 @@ -1149,9 +1179,7 @@
295 # needs to be a full path and you can't include shell syntax like
296 # redirection and pipes; put that in a script if you need it.
298 -$Conf{TarClientRestoreCmd} = '$sshPath -q -x -l root $host'
299 - . ' env LC_ALL=C $tarPath -x -p --numeric-owner --same-owner'
300 - . ' -v -f - -C $shareName+';
301 +$Conf{TarClientRestoreCmd} = '$sshPath -q -x -l root $host env LC_ALL=C $tarPath -x -p --numeric-owner --same-owner -v -f - -C $shareName+';
304 # Full path for tar on the client. Security caution: normal users should not
305 @@ -1223,7 +1251,9 @@
307 # $Conf{RsyncShareName} = ['/', '/var', '/data', '/boot'];
309 -$Conf{RsyncShareName} = '/';
310 +$Conf{RsyncShareName} = [
315 # Rsync daemon port on the client, for $Conf{XferMethod} = "rsyncd".
316 @@ -1252,7 +1282,7 @@
317 # connect to an rsyncd on the client that is not password protected.
318 # Turn off at your own risk.
320 -$Conf{RsyncdAuthRequired} = 1;
321 +$Conf{RsyncdAuthRequired} = '1';
324 # When rsync checksum caching is enabled (by adding the
325 @@ -1275,35 +1305,23 @@
327 # This setting has no effect unless checksum caching is turned on.
329 -$Conf{RsyncCsumCacheVerifyProb} = 0.01;
330 +$Conf{RsyncCsumCacheVerifyProb} = '0.01';
333 # Arguments to rsync for backup. Do not edit the first set unless you
334 # have a thorough understanding of how File::RsyncP works.
338 - # Do not edit these!
348 - '--block-size=2048',
352 - # Rsync >= 2.6.3 supports the --checksum-seed option
353 - # which allows rsync checksum caching on the server.
354 - # Uncomment this to enable rsync checksum caching if
355 - # you have a recent client rsync version and you want
356 - # to enable checksum caching.
358 - #'--checksum-seed=32761',
367 + '--block-size=2048',
372 @@ -1358,34 +1376,18 @@
373 # Note: $Conf{RsyncArgsExtra} doesn't apply to $Conf{RsyncRestoreArgs}.
375 $Conf{RsyncRestoreArgs} = [
377 - # Do not edit these!
387 - '--block-size=2048',
393 - # Rsync >= 2.6.3 supports the --checksum-seed option
394 - # which allows rsync checksum caching on the server.
395 - # Uncomment this to enable rsync checksum caching if
396 - # you have a recent client rsync version and you want
397 - # to enable checksum caching.
399 - #'--checksum-seed=32761',
402 - # Add additional arguments here
412 + '--block-size=2048',
418 ###########################################################################
419 @@ -1518,7 +1520,7 @@
421 # Set to 0 to disable this feature.
423 -$Conf{ArchivePar} = 0;
424 +$Conf{ArchivePar} = '0';
428 @@ -1554,9 +1556,7 @@
429 # needs to be a full path and you can't include shell syntax like
430 # redirection and pipes; put that in a script if you need it.
432 -$Conf{ArchiveClientCmd} = '$Installdir/bin/BackupPC_archiveHost'
433 - . ' $tarCreatePath $splitpath $parpath $host $backupnumber'
434 - . ' $compression $compext $splitsize $archiveloc $parfile *';
435 +$Conf{ArchiveClientCmd} = '$Installdir/bin/BackupPC_archiveHost $tarCreatePath $splitpath $parpath $host $backupnumber $compression $compext $splitsize $archiveloc $parfile *';
438 # Full path for ssh. Security caution: normal users should not
439 @@ -1628,7 +1628,7 @@
440 # setting this flag is a great way to verify that the machines have
441 # their netbios name set correctly before turning on DCHP.
443 -$Conf{FixedIPNetBiosNameCheck} = 0;
444 +$Conf{FixedIPNetBiosNameCheck} = '0';
447 # Full path to the ping command. Security caution: normal users
448 @@ -1805,13 +1805,13 @@
449 # needs to be a full path and you can't include shell syntax like
450 # redirection and pipes; put that in a script if you need it.
452 -$Conf{DumpPreUserCmd} = undef;
453 -$Conf{DumpPostUserCmd} = undef;
454 -$Conf{DumpPreShareCmd} = undef;
455 -$Conf{DumpPostShareCmd} = undef;
456 -$Conf{RestorePreUserCmd} = undef;
457 +$Conf{DumpPreUserCmd} = undef;
458 +$Conf{DumpPostUserCmd} = undef;
459 +$Conf{DumpPreShareCmd} = undef;
460 +$Conf{DumpPostShareCmd} = undef;
461 +$Conf{RestorePreUserCmd} = undef;
462 $Conf{RestorePostUserCmd} = undef;
463 -$Conf{ArchivePreUserCmd} = undef;
464 +$Conf{ArchivePreUserCmd} = undef;
465 $Conf{ArchivePostUserCmd} = undef;
468 @@ -1835,7 +1835,7 @@
469 # that snapshots or dumps a database which fails because
470 # of some database error.
472 -$Conf{UserCmdCheckStatus} = 0;
473 +$Conf{UserCmdCheckStatus} = '0';
476 # Override the client's host name. This allows multiple clients
477 @@ -1873,7 +1873,7 @@
478 # rounded up (ie: 2.5 means a user will never receive email more
479 # than once every 3 days).
481 -$Conf{EMailNotifyMinDays} = 2.5;
482 +$Conf{EMailNotifyMinDays} = '2.5';
485 # Name to use as the "from" name for email. Depending upon your mail
486 @@ -1928,7 +1928,7 @@
487 # When there have been no backups in this number of days the user
490 -$Conf{EMailNotifyOldBackupDays} = 7.0;
491 +$Conf{EMailNotifyOldBackupDays} = 7;
494 # This subject and message is sent to a user if their PC has not recently
495 @@ -1955,7 +1955,7 @@
496 # How old the most recent backup of Outlook files has to be before
499 -$Conf{EMailNotifyOldOutlookDays} = 5.0;
500 +$Conf{EMailNotifyOldOutlookDays} = 5;
503 # This subject and message is sent to a user if their Outlook files have
504 @@ -1983,10 +1983,9 @@
505 # Additional email headers. This sets to charset to
508 -$Conf{EMailHeaders} = <<EOF;
510 +$Conf{EMailHeaders} = 'MIME-Version: 1.0
511 Content-Type: text/plain; charset="utf-8"
515 ###########################################################################
516 # CGI user interface configuration settings
517 @@ -2059,7 +2058,7 @@
518 # be rendered as a link to http://myhost/users/craig.html.
520 $Conf{CgiUserHomePageCheck} = '';
521 -$Conf{CgiUserUrlCreate} = 'mailto:%s';
522 +$Conf{CgiUserUrlCreate} = 'mailto:%s';
525 # Date display format for CGI interface. A value of 1 uses US-style
526 @@ -2074,12 +2073,12 @@
527 # the user is listed in the host file (as either the user or in moreUsers)
530 -$Conf{CgiNavBarAdminAllHosts} = 1;
531 +$Conf{CgiNavBarAdminAllHosts} = '1';
534 # Enable/disable the search box in the navigation bar.
536 -$Conf{CgiSearchBoxEnable} = 1;
537 +$Conf{CgiSearchBoxEnable} = '1';
540 # Additional navigation bar links. These appear for both regular users
541 @@ -2089,31 +2088,34 @@
542 # just literally displaying name.
544 $Conf{CgiNavBarLinks} = [
546 - link => "?action=view&type=docs",
547 - lname => "Documentation", # actually displays $Lang->{Documentation}
550 - link => "http://backuppc.wiki.sourceforge.net",
551 - name => "Wiki", # displays literal "Wiki"
554 - link => "http://backuppc.sourceforge.net",
555 - name => "SourceForge", # displays literal "SourceForge"
558 + 'link' => '?action=view&type=docs',
559 + 'lname' => 'Documentation',
563 + 'link' => 'http://backuppc.wiki.sourceforge.net',
568 + 'link' => 'http://backuppc.sourceforge.net',
570 + 'name' => 'SourceForge'
575 # Hilight colors based on status that are used in the PC summary page.
577 $Conf{CgiStatusHilightColor} = {
578 - Reason_backup_failed => '#ffcccc',
579 - Reason_backup_done => '#ccffcc',
580 - Reason_no_ping => '#ffff99',
581 - Reason_backup_canceled_by_user => '#ff9900',
582 - Status_backup_in_progress => '#66cc99',
583 - Disabled_OnlyManualBackups => '#d1d1d1',
584 - Disabled_AllBackupsDisabled => '#d1d1d1',
585 + 'Reason_backup_failed' => '#ffcccc',
586 + 'Reason_backup_done' => '#ccffcc',
587 + 'Reason_backup_canceled_by_user' => '#ff9900',
588 + 'Reason_no_ping' => '#ffff99',
589 + 'Disabled_OnlyManualBackups' => '#d1d1d1',
590 + 'Status_backup_in_progress' => '#66cc99',
591 + 'Disabled_AllBackupsDisabled' => '#d1d1d1'
595 @@ -2141,7 +2143,7 @@
596 # 'pl' => 'text/plain',
599 -$Conf{CgiExt2ContentType} = { };
600 +$Conf{CgiExt2ContentType} = {};
603 # URL (without the leading http://host) for BackupPC's image directory.
604 @@ -2166,7 +2168,7 @@
606 # Whether the user is allowed to edit their per-PC config.
608 -$Conf{CgiUserConfigEditEnable} = 1;
609 +$Conf{CgiUserConfigEditEnable} = '1';
612 # Which per-host config variables a non-admin user is allowed
613 @@ -2180,96 +2182,96 @@
614 # sorts of bad things.
616 $Conf{CgiUserConfigEdit} = {
620 - FullKeepCntMin => 1,
623 - IncrKeepCntMin => 1,
627 - PartialAgeMax => 1,
628 - RestoreInfoKeepCnt => 1,
629 - ArchiveInfoKeepCnt => 1,
630 - BackupFilesOnly => 1,
631 - BackupFilesExclude => 1,
632 - BackupsDisable => 1,
633 - BlackoutBadPingLimit => 1,
634 - BlackoutGoodCnt => 1,
635 - BlackoutPeriods => 1,
636 - BackupZeroFilesIsFatal => 1,
637 - ClientCharset => 1,
638 - ClientCharsetLegacy => 1,
642 - SmbShareUserName => 1,
643 - SmbSharePasswd => 1,
644 - SmbClientFullCmd => 0,
645 - SmbClientIncrCmd => 0,
646 - SmbClientRestoreCmd => 0,
651 - TarClientRestoreCmd => 0,
652 - TarClientPath => 0,
653 - RsyncShareName => 1,
654 - RsyncdClientPort => 1,
656 - RsyncdUserName => 1,
657 - RsyncdAuthRequired => 1,
658 - RsyncCsumCacheVerifyProb => 1,
660 - RsyncArgsExtra => 1,
661 - RsyncRestoreArgs => 1,
662 - RsyncClientCmd => 0,
663 - RsyncClientRestoreCmd => 0,
664 - RsyncClientPath => 0,
671 - FtpFollowSymlinks => 1,
672 - FtpRestoreEnabled => 1,
677 - ArchiveClientCmd => 0,
678 - FixedIPNetBiosNameCheck => 1,
680 - NmbLookupFindHostCmd => 0,
683 - ClientTimeout => 1,
684 - MaxOldPerPCLogFiles => 1,
685 - CompressLevel => 1,
686 - ClientNameAlias => 1,
687 - DumpPreUserCmd => 0,
688 - DumpPostUserCmd => 0,
689 - RestorePreUserCmd => 0,
690 - RestorePostUserCmd => 0,
691 - ArchivePreUserCmd => 0,
692 - ArchivePostUserCmd => 0,
693 - DumpPostShareCmd => 0,
694 - DumpPreShareCmd => 0,
695 - UserCmdCheckStatus => 0,
696 - EMailNotifyMinDays => 1,
697 - EMailFromUserName => 1,
698 - EMailAdminUserName => 1,
699 - EMailUserDestDomain => 1,
700 - EMailNoBackupEverSubj => 1,
701 - EMailNoBackupEverMesg => 1,
702 - EMailNotifyOldBackupDays => 1,
703 - EMailNoBackupRecentSubj => 1,
704 - EMailNoBackupRecentMesg => 1,
705 - EMailNotifyOldOutlookDays => 1,
706 - EMailOutlookBackupSubj => 1,
707 - EMailOutlookBackupMesg => 1,
712 + FullKeepCntMin => 1,
715 + IncrKeepCntMin => 1,
719 + PartialAgeMax => 1,
720 + RestoreInfoKeepCnt => 1,
721 + ArchiveInfoKeepCnt => 1,
722 + BackupFilesOnly => 1,
723 + BackupFilesExclude => 1,
724 + BackupsDisable => 1,
725 + BlackoutBadPingLimit => 1,
726 + BlackoutGoodCnt => 1,
727 + BlackoutPeriods => 1,
728 + BackupZeroFilesIsFatal => 1,
729 + ClientCharset => 1,
730 + ClientCharsetLegacy => 1,
734 + SmbShareUserName => 1,
735 + SmbSharePasswd => 1,
736 + SmbClientFullCmd => 0,
737 + SmbClientIncrCmd => 0,
738 + SmbClientRestoreCmd => 0,
743 + TarClientRestoreCmd => 0,
744 + TarClientPath => 0,
745 + RsyncShareName => 1,
746 + RsyncdClientPort => 1,
748 + RsyncdUserName => 1,
749 + RsyncdAuthRequired => 1,
750 + RsyncCsumCacheVerifyProb => 1,
752 + RsyncArgsExtra => 1,
753 + RsyncRestoreArgs => 1,
754 + RsyncClientCmd => 0,
755 + RsyncClientRestoreCmd => 0,
756 + RsyncClientPath => 0,
763 + FtpFollowSymlinks => 1,
764 + FtpRestoreEnabled => 1,
769 + ArchiveClientCmd => 0,
770 + FixedIPNetBiosNameCheck => 1,
772 + NmbLookupFindHostCmd => 0,
775 + ClientTimeout => 1,
776 + MaxOldPerPCLogFiles => 1,
777 + CompressLevel => 1,
778 + ClientNameAlias => 1,
779 + DumpPreUserCmd => 0,
780 + DumpPostUserCmd => 0,
781 + RestorePreUserCmd => 0,
782 + RestorePostUserCmd => 0,
783 + ArchivePreUserCmd => 0,
784 + ArchivePostUserCmd => 0,
785 + DumpPostShareCmd => 0,
786 + DumpPreShareCmd => 0,
787 + UserCmdCheckStatus => 0,
788 + EMailNotifyMinDays => 1,
789 + EMailFromUserName => 1,
790 + EMailAdminUserName => 1,
791 + EMailUserDestDomain => 1,
792 + EMailNoBackupEverSubj => 1,
793 + EMailNoBackupEverMesg => 1,
794 + EMailNotifyOldBackupDays => 1,
795 + EMailNoBackupRecentSubj => 1,
796 + EMailNoBackupRecentMesg => 1,
797 + EMailNotifyOldOutlookDays => 1,
798 + EMailOutlookBackupSubj => 1,
799 + EMailOutlookBackupMesg => 1,