X-Git-Url: https://git.stderr.nl/gitweb?a=blobdiff_plain;f=handlers%2Fdup.helper;h=a18063dbd507de83a7e6b4f242a0c673c159ee6b;hb=b538ddaa1e0a301831270c177472abd85c011b0f;hp=7036dd87134aa6e30ee16391cceb5a14d4407da4;hpb=cfc47e5571e61f4323b9f64f9cbb64dfbc4bf1b4;p=matthijs%2Fupstream%2Fbackupninja.git diff --git a/handlers/dup.helper b/handlers/dup.helper index 7036dd8..a18063d 100644 --- a/handlers/dup.helper +++ b/handlers/dup.helper @@ -1,4 +1,5 @@ -# -*- mode: sh; sh-basic-offset: 8; indent-tabs-mode: nil; -*- +# -*- mode: sh; sh-basic-offset: 3; indent-tabs-mode: nil; -*- + HELPERS="$HELPERS dup:incremental_encrypted_remote_filesystem_backup" ### Functions @@ -32,7 +33,7 @@ do_dup_vserver() { # choose the files to backup REPLY= while [ -z "$REPLY" ]; do - formBegin "$dup_title - vservers: includes" + formBegin "$dup_title - vservers: vsincludes (backup these directories from every selected vserver)" [ -z "$dup_vsincludes" ] && dup_vsincludes="$dup_default_includes" for i in $dup_vsincludes; do formItem include "$i" @@ -172,7 +173,7 @@ do_dup_gpg_signkey() { } do_dup_gpg_passphrase() { - local question="Enter the passphrase needed to $@:" + local question="Enter the passphrase needed to unlock the GnuPG key:" REPLY= while [ -z "$REPLY" -o -z "$dup_gpg_password" ]; do passwordBox "$dup_title - GnuPG" "$question" @@ -184,7 +185,7 @@ do_dup_gpg_passphrase() { do_dup_gpg() { # symmetric or public key encryption ? - booleanBox "$dup_title - GnuPG" "Use public key encryption? Else, symmetric encryption will be used, and data signing will be impossible." "$dup_gpg_asymmetric_encryption" + booleanBox "$dup_title - GnuPG" "Use public key encryption? Otherwise, symmetric encryption will be used, and data signing will be impossible." "$dup_gpg_asymmetric_encryption" if [ $? = 0 ]; then dup_gpg_asymmetric_encryption=yes else @@ -200,19 +201,8 @@ do_dup_gpg() { fi fi - # a passphrase is only needed when signing, or when symmetric encryption is used - if [ "$dup_gpg_asymmetric_encryption" == "no" ]; then - do_dup_gpg_passphrase "encrypt the backups" - [ $? = 0 ] || return 1 - elif [ "$dup_gpg_sign" == "yes" ]; then - if [ -z "$dup_gpg_signkey" ]; then - do_dup_gpg_passphrase "unlock the GnuPG 0x$dup_gpg_signkey key used to sign the backups" - [ $? = 0 ] || return 1 - else - do_dup_gpg_passphrase "unlock the GnuPG 0x$dup_gpg_encryptkey key used to sign the backups" - [ $? = 0 ] || return 1 - fi - fi + # a passphrase is alway needed + do_dup_gpg_passphrase _gpg_done="(DONE)" setDefault adv @@ -275,18 +265,20 @@ testconnect = $dup_testconnect ###################################################### ## gpg section -## (how to encrypt and optionnally sign the backups) +## (how to encrypt and optionally sign the backups) ## -## WARNING: old (pre-0.9.2) example.dup used to give wrong information about -## the way the following options are used. Please read ahead +## WARNING: old (pre-0.9.4) example.dup used to give wrong information about +## the way the following options are used. Please read the following ## carefully. ## ## If the encryptkey variable is set: ## - data is encrypted with the GnuPG public key specified by the encryptkey ## variable -## - if signing is enabled, the password variable is used to unlock the GnuPG -## private key used for signing; else, you do not need to set the password -## variable +## - if signing is enabled, data is signed with the GnuPG private +## key specified by the signkey variable +## - the password variable is used to unlock the GnuPG key(s) used +## for encryption and (optionnal) signing +## ## If the encryptkey option is not set: ## - data signing is not possible ## - the password variable is used to encrypt the data with symmetric @@ -294,10 +286,10 @@ testconnect = $dup_testconnect [gpg] -# when set to yes, encryptkey variable must be set bellow; if you want to use +# when set to yes, encryptkey variable must be set below; if you want to use # two different keys for encryption and signing, you must also set the signkey -# variable bellow. -# default is no, for backward compatibility with backupninja <= 0.5. +# variable below. +# default is no, for backwards compatibility with backupninja <= 0.5. sign = $dup_gpg_sign # ID of the GnuPG public key used for data encryption. @@ -309,7 +301,7 @@ encryptkey = $dup_gpg_encryptkey signkey = $dup_gpg_signkey # password -# NB: do not quote it, and it should not contain any quote +# NB: neither quote this, nor should it include any quotes password = $dup_gpg_password ###################################################### @@ -350,19 +342,23 @@ EOF # be used: # vsnames = all | ... (default = all) # vsinclude = +# vsinclude = +# ... # Any path specified in vsinclude is added to the include list for each vserver -# listed in vsnames (or all if vsnames = all). -# E.g. vsinclude = /home will backup the /home partition in every vserver -# listed in vsnames. If you have vsnames = "foo bar baz", this vsinclude will -# add to the include list /vservers/foo/home, /vservers/bar/home and -# /vservers/baz/home. +# listed in vsnames (or all if vsnames = all, which is the default). +# +# For example, vsinclude = /home will backup the /home directory in every +# vserver listed in vsnames. If you have 'vsnames = foo bar baz', this +# vsinclude will add to the include list /vservers/foo/home, /vservers/bar/home +# and /vservers/baz/home. # Vservers paths are derived from $VROOTDIR. +# vsinclude supports globbing with '*'. EOF if [ "$host_or_vservers" == vservers -o "$host_or_vservers" == both ]; then set -o noglob - echo -e "vsnames = \"$selected_vservers\"\n" >> $next_filename + echo -e "vsnames = $selected_vservers\n" >> $next_filename for i in $dup_vsincludes; do echo "vsinclude = $i" >> $next_filename done @@ -503,7 +499,7 @@ dup_wizard() { # Global variables whose '*' shall not be expanded set -o noglob dup_default_includes="/var/spool/cron/crontabs /var/backups /etc /root /home /usr/local/*bin /var/lib/dpkg/status*" - dup_default_excludes="/home/*/.gnupg" + dup_default_excludes="/home/*/.gnupg /home/*/.gnupg /home/*/.local/share/Trash /home/*/.Trash /home/*/.thumbnails /home/*/.beagle /home/*/.aMule /home/*/gtk-gnutella-downloads" set +o noglob dup_main_menu