From: intrigeri Date: Sat, 7 Oct 2006 03:27:24 +0000 (+0000) Subject: sys: fix the '*' in dpkg --get-selections X-Git-Url: https://git.stderr.nl/gitweb?a=commitdiff_plain;h=4a70e8724beb28ab0fc8c7160d40be7bb7be7bd7;p=matthijs%2Fupstream%2Fbackupninja.git sys: fix the '*' in dpkg --get-selections git-svn-id: http://code.autistici.org/svn/backupninja/trunk@442 758a04ac-41e6-0310-8a23-8373a73cc35d --- diff --git a/ChangeLog b/ChangeLog index 72572e5..8079317 100644 --- a/ChangeLog +++ b/ChangeLog @@ -66,7 +66,8 @@ version 0.9.4 -- unreleased sys: . Many more system checks were added, (thanks to Petr KlĂ­ma) . Added warning if no devices were found (thanks Ranier Zocholl) - . Enhanced debian package selections to include purged packages (thanks Tom Hoover) + . Enhanced debian package selections to include purged packages (thanks + Tom Hoover) . Removed warning about vserver not running (thanks anarcat) ldap: . Compress now happens in-line to save some disk space (Closes: #370778) diff --git a/handlers/sys b/handlers/sys index 8059866..310d921 100755 --- a/handlers/sys +++ b/handlers/sys @@ -37,18 +37,19 @@ if [ $os = "debian" ] then getconf packagesfile /var/backups/dpkg-selections.txt getconf packagemgr `which dpkg` - getconf packagemgroptions " --get-selections \*" + getconf packagemgroptions ' --get-selections *' elif [ $os = "redhat" ] then getconf packagesfile /var/backups/rpmpackages.txt getconf packagemgr `which rpm` - getconf packagemgroptions " -qa " + getconf packagemgroptions ' -qa ' getconf SYSREPORT `which sysreport` - getconf sysreport_options " -norpm " + getconf sysreport_options ' -norpm ' else getconf packagesfile /var/backups/unknownOS.txt fi +packagemgroptions="${packagemgroptions//__star__/*}" getconf partitions yes getconf partitionsfile /var/backups/partitions.__star__.txt @@ -110,15 +111,21 @@ if [ "$packages" == "yes" ]; then then for vserver in `ls $VROOTDIR | grep -E -v $nodpkg` do + # don't expand * since it can be used in $packagemgroptions + set -o noglob debug "$VSERVER $vserver exec $packagemgr $packagemgroptions > $VROOTDIR/$vserver$packagesfile" $VSERVER $vserver exec $packagemgr $packagemgroptions > $VROOTDIR/$vserver$packagesfile || fatal "can not save $packagemgr info to $packagesfile" + set +o noglog done fi # We want to perform this on the host as well if [ "$packages" == "yes" ]; then + # don't expand * since it can be used in $packagemgroptions + set -o noglob debug "$packagemgr $packagemgroptions > $packagesfile" $packagemgr $packagemgroptions > $packagesfile || fatal "can not save $packagemgr info to $packagesfile" + set +o noglob fi fi