diff --git a/AUTHORS b/AUTHORS index 5ca3087c73af2ed1afbc6574f6a388f8d1f9ea00..90fa918563ad54e7966925e80700c52a269852d5 100644 --- a/AUTHORS +++ b/AUTHORS @@ -37,3 +37,4 @@ Chris Nolan <chris@cenolan.com> -- maildir subdirectory expansion Dan Carley -- mysql bugfix Jordi Mallach <jordi@debian.org> -- do not error when no jobs are configured Jacob Anawalt <jlanawalt@gmail.com> -- pg_dump format option +Sergio Talens-Oliag <sto@debian.org> -- pipefail fixes diff --git a/ChangeLog b/ChangeLog index f7bf58563159fb68b7cec206d094cb67b97ca641..8bcdc6b9e00f2d866d02cbccd14650ffe797e157 100644 --- a/ChangeLog +++ b/ChangeLog @@ -8,10 +8,17 @@ version 0.9.9 -- UNRELEASED (Closes Roundup bug #598) . Remove support for duplicity < 0.4.4. Even etch-backports has a newer one. + ldap: + . Fix reliance on bash for pipefail. + mysql: + . Fix reliance on bash for pipefail. + Thanks to Sergio Talens-Oliag <sto@debian.org> for the patch. + (Closes: #602374) postgresql: . Support various pg_dump formats in addition to pg_dumpall. Thanks to Jacob Anawalt <jlanawalt@gmail.com> for the patch. (Closes Roundup bug #2534) + . Fix reliance on bash for pipefail. rdiff: . Support reading include/exclude patterns from files using the "include @/etc/backup_includes" syntax (Closes Roundup bug diff --git a/handlers/ldap.in b/handlers/ldap.in index 83307eedd3992e1f4d056dd9dfe0a90e66d732cc..600f1723e0ad64c48b1448845853c837ae3e272a 100644 --- a/handlers/ldap.in +++ b/handlers/ldap.in @@ -91,7 +91,7 @@ if [ "$ldif" == "yes" ]; then execstr="$execstr > $dumpdir/$dbsuffix.ldif" fi debug "$execstr" - output=`su root -c "set -o pipefail ; $execstr" 2>&1` + output=`su root -s /bin/bash -c "set -o pipefail ; $execstr" 2>&1` code=$? if [ "$code" == "0" ]; then debug $output diff --git a/handlers/mysql.in b/handlers/mysql.in index 0282046f6387c6c458f07fe7a786e28186017d7f..05ea396530b8a04a1890716d30d3ef9c49789fa9 100644 --- a/handlers/mysql.in +++ b/handlers/mysql.in @@ -303,7 +303,7 @@ then debug "su $user -c \"$execstr\"" if [ ! $test ] then - output=`su $user -c "set -o pipefail ; $execstr" 2>&1` + output=`su $user -s /bin/bash -c "set -o pipefail ; $execstr" 2>&1` code=$? if [ "$code" == "0" ] then diff --git a/handlers/pgsql.in b/handlers/pgsql.in index f68ec2f9cd96d99c66d5483db9d99f4dfdcf1f1a..ff71ebc73b1811887c97526dcbf4ab0886e61705 100644 --- a/handlers/pgsql.in +++ b/handlers/pgsql.in @@ -115,13 +115,13 @@ fi if [ "$databases" == "all" ]; then if [ $usevserver = yes ]; then if [ "$compress" == "yes" ]; then - execstr="$VSERVER $vsname exec su - $PGSQLUSER -c \"set -o pipefail ; $PGSQLDUMPALL | $GZIP $GZIP_OPTS > '$backupdir/${vsname}.sql.gz'\"" + execstr="$VSERVER $vsname exec su - $PGSQLUSER -s /bin/bash -c \"set -o pipefail ; $PGSQLDUMPALL | $GZIP $GZIP_OPTS > '$backupdir/${vsname}.sql.gz'\"" else execstr="$VSERVER $vsname exec su - $PGSQLUSER -c \"$PGSQLDUMPALL > '$backupdir/${vsname}.sql'\"" fi else if [ "$compress" == "yes" ]; then - execstr="su - $PGSQLUSER -c \"set -o pipefail ; $PGSQLDUMPALL | $GZIP $GZIP_OPTS > '$backupdir/${localhost}-all.sql.gz'\"" + execstr="su - $PGSQLUSER -s /bin/bash -c \"set -o pipefail ; $PGSQLDUMPALL | $GZIP $GZIP_OPTS > '$backupdir/${localhost}-all.sql.gz'\"" else execstr="su - $PGSQLUSER -c \"$PGSQLDUMPALL > '$backupdir/${localhost}-all.sql'\"" fi @@ -152,9 +152,9 @@ else globalscmd="$PGSQLDUMPALL -g > '$backupdir/globals.sql'" fi if [ $usevserver = yes ]; then - execstr="$VSERVER $vsname exec su - $PGSQLUSER -c \"$globalscmd\"" + execstr="$VSERVER $vsname exec su - $PGSQLUSER -s /bin/bash -c \"$globalscmd\"" else - execstr="su - $PGSQLUSER -c \"$globalscmd\"" + execstr="su - $PGSQLUSER -s /bin/bash -c \"$globalscmd\"" fi debug "$execstr" if [ ! $test ]; then @@ -189,9 +189,9 @@ else dumpcmd="$PGSQLDUMP --format=$format ${disablecustomcompress} $db | > '$backupdir/${db}.${dumpext}'" fi if [ $usevserver = yes ]; then - execstr="$VSERVER $vsname exec su - $PGSQLUSER -c \"$dumpcmd\"" + execstr="$VSERVER $vsname exec su - $PGSQLUSER -s /bin/bash -c \"$dumpcmd\"" else - execstr="su - $PGSQLUSER -c \"$dumpcmd\"" + execstr="su - $PGSQLUSER -s /bin/bash -c \"$dumpcmd\"" fi debug "$execstr" if [ ! $test ]; then