retitle 399790 deluser fails in purge [+NMU diff]
thanks
On Wed, 22 Nov 2006, Peter Palfrader wrote:
> Package: amanda-common
> Version: 1:2.5.1p1-2
> Severity: serious
>
> postrm fails when deluser fails:
>
> | /usr/sbin/deluser: The user `backup' is not a member of group `disk'.
> | dpkg: error processing amanda-common (--purge):
> | subprocess post-removal script returned error exit status 6
> | Errors were encountered while processing:
> | amanda-common
> | E: Sub-process /usr/bin/dpkg returned an error code (1)
> | A package failed to install. Trying to recover:
I have uploaded an NMU to DELAYED-4.
This is the gist of the patch, complete interdiff attached.
--- amanda-2.5.1p1/debian/postrm
+++ amanda-2.5.1p1/debian/postrm
@@ -27,8 +27,17 @@
rm -f ~backup/.amandahosts
- deluser backup disk
- deluser backup tape
+ if which deluser >/dev/null 2>&1 ; then
+ for group in disk tape; do
+ # only call deluser when backup is in $group
+ if getent group "$group" |
+ awk -F: '{ print $4 }' |
+ awk -F, '{ for (i=1; i <= NF; i++ ) print $i }' |
+ grep '^backup$' > /dev/null; then
+ deluser backup "$group" || true
+ fi
+ done
+ fi
;;
remove|upgrade|deconfigure)
;;
--
| .''`. ** Debian GNU/Linux **
Peter Palfrader | : :' : The universal
http://www.palfrader.org/ | `. `' Operating System
| `- http://www.debian.org/
diff -u amanda-2.5.1p1/config/config.sub amanda-2.5.1p1/config/config.sub
--- amanda-2.5.1p1/config/config.sub
+++ amanda-2.5.1p1/config/config.sub
@@ -4,7 +4,7 @@
# 2000, 2001, 2002, 2003, 2004, 2005, 2006 Free Software Foundation,
# Inc.
-timestamp='2006-09-20'
+timestamp='2006-07-02'
# This file is (in principle) common to ALL GNU software.
# The presence of a machine in this file suggests that SOME GNU software
@@ -276,7 +276,6 @@
| pdp10 | pdp11 | pj | pjl \
| powerpc | powerpc64 | powerpc64le | powerpcle | ppcbe \
| pyramid \
- | score \
| sh | sh[1234] | sh[24]a | sh[23]e | sh[34]eb | sheb | shbe | shle |
sh[1234]le | sh3ele \
| sh64 | sh64le \
| sparc | sparc64 | sparc64b | sparc64v | sparc86x | sparclet |
sparclite \
@@ -285,7 +284,7 @@
| tahoe | thumb | tic4x | tic80 | tron \
| v850 | v850e \
| we32k \
- | x86 | xc16x | xscale | xscalee[bl] | xstormy16 | xtensa \
+ | x86 | xscale | xscalee[bl] | xstormy16 | xtensa \
| z8k)
basic_machine=$basic_machine-unknown
;;
@@ -368,7 +367,7 @@
| tron-* \
| v850-* | v850e-* | vax-* \
| we32k-* \
- | x86-* | x86_64-* | xc16x-* | xps100-* | xscale-* | xscalee[bl]-* \
+ | x86-* | x86_64-* | xps100-* | xscale-* | xscalee[bl]-* \
| xstormy16-* | xtensa-* \
| ymp-* \
| z8k-*)
@@ -910,10 +909,6 @@
sb1el)
basic_machine=mipsisa64sb1el-unknown
;;
- sde)
- basic_machine=mipsisa32-sde
- os=-elf
- ;;
sei)
basic_machine=mips-sei
os=-seiux
@@ -1371,9 +1366,6 @@
# system, and we'll never get to this point.
case $basic_machine in
- score-*)
- os=-elf
- ;;
spu-*)
os=-elf
;;
diff -u amanda-2.5.1p1/debian/po/templates.pot
amanda-2.5.1p1/debian/po/templates.pot
--- amanda-2.5.1p1/debian/po/templates.pot
+++ amanda-2.5.1p1/debian/po/templates.pot
@@ -8,7 +8,7 @@
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: [EMAIL PROTECTED]"
-"POT-Creation-Date: 2006-10-29 11:41-0700\n"
+"POT-Creation-Date: 2006-11-29 02:13+0100\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <[EMAIL PROTECTED]>\n"
"Language-Team: LANGUAGE <[EMAIL PROTECTED]>\n"
diff -u amanda-2.5.1p1/debian/changelog amanda-2.5.1p1/debian/changelog
--- amanda-2.5.1p1/debian/changelog
+++ amanda-2.5.1p1/debian/changelog
@@ -1,3 +1,15 @@
+amanda (1:2.5.1p1-2.1) unstable; urgency=medium
+
+ * Non maintainer upload.
+ * Do not fail postrm when removing the backup user from either
+ group disk or tape does not succeed. Also, try this only
+ when the backup user is in those groups to begin with. Also
+ handles the case of deluser not existing anymore.
+ Based in parts on the patch provided by Andreas Henriksson and
+ the cupsys postinst script (closes: #399790).
+
+ -- Peter Palfrader <[EMAIL PROTECTED]> Wed, 29 Nov 2006 01:57:01 +0100
+
amanda (1:2.5.1p1-2) unstable; urgency=medium
* fix broken way of setting default CLN_AMANDATES in client-src/clientconf.c
diff -u amanda-2.5.1p1/debian/postrm amanda-2.5.1p1/debian/postrm
--- amanda-2.5.1p1/debian/postrm
+++ amanda-2.5.1p1/debian/postrm
@@ -27,8 +27,17 @@
rm -f ~backup/.amandahosts
- deluser backup disk
- deluser backup tape
+ if which deluser >/dev/null 2>&1 ; then
+ for group in disk tape; do
+ # only call deluser when backup is in $group
+ if getent group "$group" |
+ awk -F: '{ print $4 }' |
+ awk -F, '{ for (i=1; i <= NF; i++ ) print $i }' |
+ grep '^backup$' > /dev/null; then
+ deluser backup "$group" || true
+ fi
+ done
+ fi
;;
remove|upgrade|deconfigure)
;;