X-Git-Url: http://git.rot13.org/?p=BackupPC.git;a=blobdiff_plain;f=conf%2Fconfig.pl;h=c7e17bb09854ba097e9c3960c886d580c281e6c1;hp=7113463f9d556bf38e9edcf32613af40a134fa2c;hb=f076585d3ff9dfe6de32292b897e293008efe74e;hpb=197383fe39b33180b648de9e4bcc1fd7b7ca6a66 diff --git a/conf/config.pl b/conf/config.pl index 7113463..c7e17bb 100644 --- a/conf/config.pl +++ b/conf/config.pl @@ -136,7 +136,13 @@ $Conf{MaxUserBackups} = 4; # This limit is to make sure BackupPC doesn't fall too far behind in # running BackupPC_link commands. # -$Conf{MaxPendingCmds} = 10; +$Conf{MaxPendingCmds} = 15; + +# +# Nice level at which CmdQueue commands (eg: BackupPC_link and +# BackupPC_nightly) are run at. +# +$Conf{CmdQueueNice} = 10; # # How many BackupPC_nightly processes to run in parallel. @@ -144,8 +150,9 @@ $Conf{MaxPendingCmds} = 10; # Each night, at the first wakeup listed in $Conf{WakeupSchedule}, # BackupPC_nightly is run. Its job is to remove unneeded files # in the pool, ie: files that only have one link. To avoid race -# conditions, BackupPC_nightly runs only when there are no backups -# running, and no backups will start while it runs. +# conditions, BackupPC_nightly and BackupPC_link cannot run at +# the same time. Starting in v3.0.0, BackupPC_nightly can run +# concurrently with backups (BackupPC_dump). # # So to reduce the elapsed time, you might want to increase this # setting to run several BackupPC_nightly processes in parallel @@ -207,6 +214,10 @@ $Conf{DfPath} = ''; # $dfPath path to df ($Conf{DfPath}) # $topDir top-level BackupPC data directory # +# Note: all Cmds are executed directly without a shell, so the prog name +# needs to be a full path and you can't include shell syntax like +# redirection and pipes; put that in a script if you need it. +# $Conf{DfCmd} = '$dfPath $topDir'; # @@ -283,6 +294,14 @@ $Conf{BackupPCUser} = ''; # with configure.pl to change InstallDir. # CgiDir - Apache CGI directory for BackupPC_Admin # +# Note: it is STRONGLY recommended that you don't change the +# values here. These are set at installation time and are here +# for reference and are used during upgrades. +# +# Instead of changing TopDir here it is recommended that you use +# a symbolic link to the new location, or mount the new BackupPC +# store at the existing $Conf{TopDir} setting. +# $Conf{TopDir} = ''; $Conf{ConfDir} = ''; $Conf{LogDir} = ''; @@ -332,6 +351,10 @@ $Conf{PerlModuleLoad} = undef; # . ' $serverInitdPath start' # . ' < /dev/null >& /dev/null'; # +# Note: all Cmds are executed directly without a shell, so the prog name +# needs to be a full path and you can't include shell syntax like +# redirection and pipes; put that in a script if you need it. +# $Conf{ServerInitdPath} = ''; $Conf{ServerInitdStartCmd} = ''; @@ -879,6 +902,10 @@ $Conf{ClientCharset} = ''; # $Conf{ClientCharsetLegacy} = 'iso-8859-1'; +########################################################################### +# Samba Configuration +# (can be overwritten in the per-PC log file) +########################################################################### # # Name of the host share that is backed up when using SMB. This can be a # string or an array of strings if there are multiple shares per host. @@ -938,6 +965,10 @@ $Conf{SmbClientPath} = ''; # $X_option exclude option (if $fileList is an exclude list) # $timeStampFile start time for incremental dump # +# Note: all Cmds are executed directly without a shell, so the prog name +# needs to be a full path and you can't include shell syntax like +# redirection and pipes; put that in a script if you need it. +# $Conf{SmbClientFullCmd} = '$smbClientPath \\\\$host\\$shareName' . ' $I_option -U $userName -E -N -d 1' . ' -c tarmode\\ full -Tc$X_option - $fileList'; @@ -948,6 +979,10 @@ $Conf{SmbClientFullCmd} = '$smbClientPath \\\\$host\\$shareName' # # Same variable substitutions are applied as $Conf{SmbClientFullCmd}. # +# Note: all Cmds are executed directly without a shell, so the prog name +# needs to be a full path and you can't include shell syntax like +# redirection and pipes; put that in a script if you need it. +# $Conf{SmbClientIncrCmd} = '$smbClientPath \\\\$host\\$shareName' . ' $I_option -U $userName -E -N -d 1' . ' -c tarmode\\ full -TcN$X_option $timeStampFile - $fileList'; @@ -962,10 +997,18 @@ $Conf{SmbClientIncrCmd} = '$smbClientPath \\\\$host\\$shareName' # You should set $Conf{SmbClientRestoreCmd} to undef and the # corresponding CGI restore option will be removed. # +# Note: all Cmds are executed directly without a shell, so the prog name +# needs to be a full path and you can't include shell syntax like +# redirection and pipes; put that in a script if you need it. +# $Conf{SmbClientRestoreCmd} = '$smbClientPath \\\\$host\\$shareName' . ' $I_option -U $userName -E -N -d 1' . ' -c tarmode\\ full -Tx -'; +########################################################################### +# Tar Configuration +# (can be overwritten in the per-PC log file) +########################################################################### # # Which host directories to backup when using tar transport. This can be a # string or an array of strings if there are multiple directories to @@ -1032,6 +1075,10 @@ $Conf{TarShareName} = '/'; # # This setting only matters if $Conf{XferMethod} = 'tar'. # +# Note: all Cmds are executed directly without a shell, so the prog name +# needs to be a full path and you can't include shell syntax like +# redirection and pipes; put that in a script if you need it. +# $Conf{TarClientCmd} = '$sshPath -q -x -n -l root $host' . ' env LC_ALL=C $tarPath -c -v -f - -C $shareName+' . ' --totals'; @@ -1089,6 +1136,10 @@ $Conf{TarIncrArgs} = '--newer=$incrDate+ $fileList+'; # $Conf{TarClientRestoreCmd} to undef and the corresponding CGI # restore option will be removed. # +# Note: all Cmds are executed directly without a shell, so the prog name +# needs to be a full path and you can't include shell syntax like +# redirection and pipes; put that in a script if you need it. +# $Conf{TarClientRestoreCmd} = '$sshPath -q -x -l root $host' . ' env LC_ALL=C $tarPath -x -p --numeric-owner --same-owner' . ' -v -f - -C $shareName+'; @@ -1101,6 +1152,10 @@ $Conf{TarClientRestoreCmd} = '$sshPath -q -x -l root $host' # $Conf{TarClientPath} = ''; +########################################################################### +# Rsync/Rsyncd Configuration +# (can be overwritten in the per-PC log file) +########################################################################### # # Path to rsync executable on the client # @@ -1138,6 +1193,10 @@ $Conf{RsyncClientCmd} = '$sshPath -q -x -l root $host $rsyncPath $argList+'; # # This setting only matters if $Conf{XferMethod} = 'rsync'. # +# Note: all Cmds are executed directly without a shell, so the prog name +# needs to be a full path and you can't include shell syntax like +# redirection and pipes; put that in a script if you need it. +# $Conf{RsyncClientRestoreCmd} = '$sshPath -q -x -l root $host $rsyncPath $argList+'; # @@ -1291,63 +1350,72 @@ $Conf{RsyncRestoreArgs} = [ # ]; +########################################################################### +# FTP Configuration +# (can be overwritten in the per-PC log file) +########################################################################## # -# Share name to backup. For $Conf{XferMethod} = "backuppcd" this should -# be a file system path, eg '/' or '/home'. +# Name of the host share that is backed up when using FTP. This can be a +# string or an array of strings if there are multiple shares per host. +# Examples: # -# This can also be a list of multiple file system paths or modules. -# (Can it??) +# $Conf{FtpShareName} = 'c'; # backup 'c' share +# $Conf{FtpShareName} = ['c', 'd']; # backup 'c' and 'd' shares # -# $Conf{BackupPCdShareName} = ['/', '/var', '/data', '/boot']; +# This setting only matters if $Conf{XferMethod} = 'ftp'. # -$Conf{BackupPCdShareName} = '/'; +$Conf{FtpShareName} = ''; # -# Path to backuppcd executable on the server +# FTP user name. This is used to log into the server. # -$Conf{BackupPCdPath} = ''; +# This setting is used only if $Conf{XferMethod} = 'ftp'. +# +$Conf{FtpUserName} = ''; # -# Full command to run backuppcd on the server to backup a given -# client machine. The following variables are substituted at -# run-time (TODO: update this list) +# FTP user password. This is used to log into the server. # -# $host host name being backed up -# $hostIP host's IP address -# $shareName share name to backup (ie: top-level directory path) -# $backuppcdPath same as $Conf{BackupPCdPath} -# $sshPath same as $Conf{SshPath} +# This setting is used only if $Conf{XferMethod} = 'ftp'. # -# This setting only matters if $Conf{XferMethod} = 'backuppcd'. +$Conf{FtpPasswd} = ''; + # -# Arguments to backupcpd are: +# Transfer block size. This sets the size of the amounts of data in +# each frame. While undefined, this value takes the default value. # -# - the host name to backup -# - the share name to backup -# - the directory where the pool is -# - the directory where the last run was (NOT DONE YET) -# - a boolean value indicating whether or not the pool is -# compressed or not -# - the directory where the new run should occur (currently it assumes ".") +# This setting is used only if $Conf{XferMethod} = 'ftp'. # -$Conf{BackupPCdCmd} = '$bpcdPath $host $shareName $poolDir XXXX $poolCompress $topDir/pc/$client/new'; +$Conf{FtpBlockSize} = 10240; # -# Full command to run backuppcd on the server for restore to a -# client machine. The following variables are substituted at -# run-time (TODO: update this list) +# The port of the ftp server. If undefined, 21 is used. # -# $host host name being backed up -# $hostIP host's IP address -# $shareName share name to backup (ie: top-level directory path) -# $backuppcdPath same as $Conf{BackupPCdPath} -# $sshPath same as $Conf{SshPath} +# This setting is used only if $Conf{XferMethod} = 'ftp'. +# +$Conf{FtpPort} = 21; + # -# This setting only matters if $Conf{XferMethod} = 'backuppcd'. +# Connection timeout for FTP. When undefined, the default is 120 seconds. # -$Conf{BackupPCdRestoreCmd} = '$bpcdPath TODO'; +# This setting is used only if $Conf{XferMethod} = 'ftp'. +# +$Conf{FtpTimeout} = 120; +# +# Behaviour when BackupPC encounters symlinks on the FTP share. +# +# Symlinks cannot be restored via FTP, so the desired behaviour will +# be different depending on the setup of the share. The default for +# this behavor is 1. Directory shares with more complicated directory +# structures should consider other protocols. +# +$Conf{FtpFollowSymlinks} = 0; +########################################################################### +# Archive Configuration +# (can be overwritten in the per-PC log file) +########################################################################### # # Archive Destination # @@ -1413,6 +1481,10 @@ $Conf{ArchiveSplit} = 0; # $archiveloc The location to put the archive # $parfile The amount of parity data to create (percentage) # +# Note: all Cmds are executed directly without a shell, so the prog name +# needs to be a full path and you can't include shell syntax like +# redirection and pipes; put that in a script if you need it. +# $Conf{ArchiveClientCmd} = '$Installdir/bin/BackupPC_archiveHost' . ' $tarCreatePath $splitpath $parpath $host $backupnumber' . ' $compression $compext $splitsize $archiveloc $parfile *'; @@ -1442,6 +1514,10 @@ $Conf{NmbLookupPath} = ''; # This command is only used for DHCP hosts: given an IP address, this # command should try to find its NetBios name. # +# Note: all Cmds are executed directly without a shell, so the prog name +# needs to be a full path and you can't include shell syntax like +# redirection and pipes; put that in a script if you need it. +# $Conf{NmbLookupCmd} = '$nmbLookupPath -A $host'; # @@ -1469,6 +1545,10 @@ $Conf{NmbLookupCmd} = '$nmbLookupPath -A $host'; # Experiment manually for your site to see what form of nmblookup command # works. # +# Note: all Cmds are executed directly without a shell, so the prog name +# needs to be a full path and you can't include shell syntax like +# redirection and pipes; put that in a script if you need it. +# $Conf{NmbLookupFindHostCmd} = '$nmbLookupPath $host'; # @@ -1502,6 +1582,10 @@ $Conf{PingPath} = ''; # exit status (0 even on failure). Replace with "ping $host 1", which # gets the correct exit status but we don't get the round-trip time. # +# Note: all Cmds are executed directly without a shell, so the prog name +# needs to be a full path and you can't include shell syntax like +# redirection and pipes; put that in a script if you need it. +# $Conf{PingCmd} = '$pingPath -c 1 $host'; # @@ -1648,6 +1732,10 @@ $Conf{MaxOldPerPCLogFiles} = 12; # $type set to "archive" # $cmdType set to ArchivePreUserCmd or ArchivePostUserCmd # +# Note: all Cmds are executed directly without a shell, so the prog name +# needs to be a full path and you can't include shell syntax like +# redirection and pipes; put that in a script if you need it. +# $Conf{DumpPreUserCmd} = undef; $Conf{DumpPostUserCmd} = undef; $Conf{DumpPreShareCmd} = undef; @@ -1823,13 +1911,12 @@ $Conf{EMailOutlookBackupSubj} = undef; $Conf{EMailOutlookBackupMesg} = undef; # -# Additional email headers. If you change the charset -# to utf8 then BackupPC_sendEmail will use utf8 for -# the email body. +# Additional email headers. This sets to charset to +# utf8. # $Conf{EMailHeaders} = < "Documentation", # actually displays $Lang->{Documentation} }, { - link => "http://backuppc.sourceforge.net/faq", - name => "FAQ", # displays literal "FAQ" + link => "http://backuppc.wiki.sourceforge.net", + name => "Wiki", # displays literal "Wiki" }, { link => "http://backuppc.sourceforge.net", @@ -2071,6 +2158,12 @@ $Conf{CgiUserConfigEdit} = { RsyncClientCmd => 0, RsyncClientRestoreCmd => 0, RsyncClientPath => 0, + FtpShareName => 1, + FtpUserName => 1, + FtpPasswd => 1, + FtpBlockSize => 1, + FtpPort => 1, + FtpTimeout => 1, ArchiveDest => 1, ArchiveComp => 1, ArchivePar => 1,