[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Need dpkg expert



This problem goes back about 4 months; I've posted a few times and gotten some valuable responses, but nothing that's helped.

My problem is that once when trying to uinstall gdm the process was halted mid-stream. Ever since then, several packages refuse to install or uninstall, such as:

Setting up man-db (2.3.20-13) ...
dpkg: error processing man-db (--configure):
 subprocess post-installation script returned error exit status 10
Setting up cupsys (1.1.13-2) ...
dpkg: error processing cupsys (--configure):
 subprocess post-installation script returned error exit status 10
Setting up gdm (2.2.5.4-2) ...
dpkg: error processing gdm (--configure):
 subprocess post-installation script returned error exit status 10
Setting up wdm (1.20-14) ...
dpkg: error processing wdm (--configure):
 subprocess post-installation script returned error exit status 10
Setting up xdm (4.1.0-14) ...
dpkg: error processing xdm (--configure):
 subprocess post-installation script returned error exit status 10
Setting up xserver-common (4.1.0-14) ...
dpkg: error processing xserver-common (--configure):
 subprocess post-installation script returned error exit status 10
dpkg: dependency problems prevent configuration of xserver-xfree86:
 xserver-xfree86 depends on xserver-common (>= 4.1.0-10); however:
  Package xserver-common is not configured yet.
dpkg: error processing xserver-xfree86 (--configure):
 dependency problems - leaving unconfigured
Setting up cupsys-bsd (1.1.13-2) ...
dpkg: error processing cupsys-bsd (--configure):
 subprocess post-installation script returned error exit status 10
Errors were encountered while processing:
 man-db
 cupsys
 gdm
 wdm
 xdm
 xserver-common
 xserver-xfree86
 cupsys-bsd
E: Sub-process /usr/bin/dpkg returned an error code (1)


One of the valuable hints was to put "set -x" on the second line of one of these scripts. So I just now added it to /var/lib/dpkg/info/man-db.postinst
and did another "apt-get install man-db", with these results:

 . . .

Sorry, man-db is already the newest version.

 . . .

Setting up man-db (2.3.20-18) ...
+ '[' configure = configure ']'
+ oldcatdir=/var/catman
+ catdir=/var/cache/man
+ maybesetuid=man mandb
+ conffile=/etc/manpath.config
+ . /usr/share/debconf/confmodule
++ '[' '!' '' ']'
++ exec /usr/share/debconf/frontend /var/lib/dpkg/info/man-db.postinst configure 2.3.20-12
dpkg: error processing man-db (--configure):
 subprocess post-installation script returned error exit status 10

 . . .

Errors were encountered while processing:
 man-db

 . . .

E: Sub-process /usr/bin/dpkg returned an error code (1)


A similar run for xdm results in:

fafsa-02[westk]:/var/lib/dpkg/info> sudo apt-get install xdm
Reading Package Lists... Done
Building Dependency Tree... Done
Sorry, xdm is already the newest version.
0 packages upgraded, 0 newly installed, 0 to remove and 134  not upgraded.
8 packages not fully installed or removed.
Need to get 0B of archives. After unpacking 0B will be used.

 . . .

Setting up xdm (4.1.0-14) ...
+ THIS_PACKAGE=xdm
+ THIS_SCRIPT=postinst
+ trap 'message; message "Received signal. Aborting xdm package postinst script."; message; exit 1' 1 2 3 15
+ command -v readlink
+ . /usr/share/debconf/confmodule
++ '[' '!' '' ']'
++ exec /usr/share/debconf/frontend /var/lib/dpkg/info/xdm.postinst configure 3.3.6-11potato32
dpkg: error processing xdm (--configure):
 subprocess post-installation script returned error exit status 10


If I try to remove xdm, and put the "set -x" in /var/lib/dpkg/info/xdm.prerm script, I get this:

fafsa-02[westk]:/var/lib/dpkg/info> sudo apt-get remove xdm
Reading Package Lists... Done
Building Dependency Tree... Done
The following packages will be REMOVED:
  xdm
0 packages upgraded, 0 newly installed, 1 to remove and 134  not upgraded.
8 packages not fully installed or removed.
Need to get 0B of archives. After unpacking 668kB will be freed.
Do you want to continue? [Y/n] y
(Reading database ... 22029 files and directories currently installed.)
Removing xdm ...
+ THIS_PACKAGE=xdm
+ THIS_SCRIPT=prerm
+ trap 'message; message "Received signal. Aborting xdm package prerm script."; message; exit 1' 1 2 3 15
+ command -v readlink
+ REMOVING=yes
+ STOP=
+ grep -qs '^restart-on-upgrade' /etc/X11/xdm/xdm.options
+ '[' -n yes ']'
+ start-stop-daemon --stop --quiet --signal 0 --exec /usr/bin/X11/xdm
+ '[' -n '' ']'
+ '[' remove = upgrade -o remove = failed-upgrade ']'
+ THIS_DISPLAY_MANAGER=/usr/bin/X11/xdm
+ DEFAULT_DISPLAY_MANAGER_FILE=/etc/X11/default-display-manager
+ '[' remove = remove -o remove = deconfigure ']'
+ update-alternatives --remove xdm-greeter /usr/X11R6/lib/libXdmGreet.so.1
+ rm -f /usr/X11R6/lib/libXdmGreet.so
+ '[' -e /usr/share/debconf/confmodule ']'
+ . /usr/share/debconf/confmodule
++ '[' '!' '' ']'
++ exec /usr/share/debconf/frontend /var/lib/dpkg/info/xdm.prerm remove
+ THIS_PACKAGE=xdm
+ THIS_SCRIPT=prerm
+ trap 'message; message "Received signal. Aborting xdm package prerm script."; message; exit 1' 1 2 3 15
+ command -v readlink
+ REMOVING=yes
+ STOP=
+ grep -qs '^restart-on-upgrade' /etc/X11/xdm/xdm.options
+ '[' -n yes ']'
+ start-stop-daemon --stop --quiet --signal 0 --exec /usr/bin/X11/xdm
+ '[' -n '' ']'
+ '[' remove = upgrade -o remove = failed-upgrade ']'
+ THIS_DISPLAY_MANAGER=/usr/bin/X11/xdm
+ DEFAULT_DISPLAY_MANAGER_FILE=/etc/X11/default-display-manager
+ '[' remove = remove -o remove = deconfigure ']'
+ update-alternatives --remove xdm-greeter /usr/X11R6/lib/libXdmGreet.so.1
+ rm -f /usr/X11R6/lib/libXdmGreet.so
+ '[' -e /usr/share/debconf/confmodule ']'
+ . /usr/share/debconf/confmodule
++ '[' '!' 1 ']'
++ '[' -z '' ']'
++ exec
++ DEBCONF_REDIR=1
++ export DEBCONF_REDIR
++ _old_opts=remove
++ set -- capb CAPB
++ eval 'db_capb () {
                echo "CAPB $@" >&3
                # Set to newline to get whole line.
                local IFS='\''
'\''
                local _LINE
                read -r _LINE
# Disgusting, but it'\''s the only good way to split the line,
                # preserving all other whitespace.
                RET=${_LINE#*[  ]}
                return ${_LINE%%[       ]*}
              }'
++ set -- set SET
++ eval 'db_set () {
                echo "SET $@" >&3
                # Set to newline to get whole line.
                local IFS='\''
'\''
                local _LINE
                read -r _LINE
# Disgusting, but it'\''s the only good way to split the line,
                # preserving all other whitespace.
                RET=${_LINE#*[  ]}
                return ${_LINE%%[       ]*}
              }'
++ set -- reset RESET
++ eval 'db_reset () {
                echo "RESET $@" >&3
                # Set to newline to get whole line.
                local IFS='\''
'\''
                local _LINE
                read -r _LINE
# Disgusting, but it'\''s the only good way to split the line,
                # preserving all other whitespace.
                RET=${_LINE#*[  ]}
                return ${_LINE%%[       ]*}
              }'
++ set -- title TITLE
++ eval 'db_title () {
                echo "TITLE $@" >&3
                # Set to newline to get whole line.
                local IFS='\''
'\''
                local _LINE
                read -r _LINE
































# Disgusting, but it'\''s the only good way to split the line,
                # preserving all other whitespace.
                RET=${_LINE#*[  ]}
                return ${_LINE%%[       ]*}
              }'
++ set -- input INPUT
++ eval 'db_input () {
                echo "INPUT $@" >&3
                # Set to newline to get whole line.
                local IFS='\''
'\''
                local _LINE
                read -r _LINE
# Disgusting, but it'\''s the only good way to split the line,
                # preserving all other whitespace.
                RET=${_LINE#*[  ]}
                return ${_LINE%%[       ]*}
              }'
++ set -- beginblock BEGINBLOCK
++ eval 'db_beginblock () {
                echo "BEGINBLOCK $@" >&3
                # Set to newline to get whole line.
                local IFS='\''
'\''
                local _LINE
                read -r _LINE
# Disgusting, but it'\''s the only good way to split the line,
                # preserving all other whitespace.
                RET=${_LINE#*[  ]}
                return ${_LINE%%[       ]*}
              }'
++ set -- endblock ENDBLOCK
++ eval 'db_endblock () {
                echo "ENDBLOCK $@" >&3
                # Set to newline to get whole line.
                local IFS='\''
'\''
                local _LINE
                read -r _LINE
# Disgusting, but it'\''s the only good way to split the line,
                # preserving all other whitespace.
                RET=${_LINE#*[  ]}
                return ${_LINE%%[       ]*}
              }'
++ set -- go GO
++ eval 'db_go () {
                echo "GO $@" >&3
                # Set to newline to get whole line.
                local IFS='\''
'\''
                local _LINE
                read -r _LINE
# Disgusting, but it'\''s the only good way to split the line,
                # preserving all other whitespace.
                RET=${_LINE#*[  ]}
                return ${_LINE%%[       ]*}
              }'
++ set -- get GET
++ eval 'db_get () {
                echo "GET $@" >&3
                # Set to newline to get whole line.
                local IFS='\''
'\''
                local _LINE






























                read -r _LINE
# Disgusting, but it'\''s the only good way to split the line,
                # preserving all other whitespace.
                RET=${_LINE#*[  ]}
                return ${_LINE%%[       ]*}
              }'
++ set -- register REGISTER
++ eval 'db_register () {
                echo "REGISTER $@" >&3
                # Set to newline to get whole line.
                local IFS='\''
'\''
                local _LINE
                read -r _LINE
# Disgusting, but it'\''s the only good way to split the line,
                # preserving all other whitespace.
                RET=${_LINE#*[  ]}
                return ${_LINE%%[       ]*}
              }'
++ set -- unregister UNREGISTER
++ eval 'db_unregister () {
                echo "UNREGISTER $@" >&3
                # Set to newline to get whole line.
                local IFS='\''
'\''
                local _LINE
                read -r _LINE
# Disgusting, but it'\''s the only good way to split the line,
                # preserving all other whitespace.
                RET=${_LINE#*[  ]}
                return ${_LINE%%[       ]*}
              }'
++ set -- subst SUBST
++ eval 'db_subst () {
                echo "SUBST $@" >&3
                # Set to newline to get whole line.
                local IFS='\''
'\''
                local _LINE
                read -r _LINE
# Disgusting, but it'\''s the only good way to split the line,
                # preserving all other whitespace.
                RET=${_LINE#*[  ]}
                return ${_LINE%%[       ]*}
              }'
++ set -- previous_module PREVIOUS_MODULE
++ eval 'db_previous_module () {
                echo "PREVIOUS_MODULE $@" >&3
                # Set to newline to get whole line.
                local IFS='\''
'\''
                local _LINE
                read -r _LINE
# Disgusting, but it'\''s the only good way to split the line,
                # preserving all other whitespace.
                RET=${_LINE#*[  ]}
                return ${_LINE%%[       ]*}
              }'
++ set -- fset FSET
++ eval 'db_fset () {
                echo "FSET $@" >&3
                # Set to newline to get whole line.
                local IFS='\''

'\''
                local _LINE
                read -r _LINE
# Disgusting, but it'\''s the only good way to split the line,
                # preserving all other whitespace.
                RET=${_LINE#*[  ]}
                return ${_LINE%%[       ]*}
              }'
++ set -- fget FGET
++ eval 'db_fget () {
                echo "FGET $@" >&3
                # Set to newline to get whole line.
                local IFS='\''
'\''
                local _LINE
                read -r _LINE
# Disgusting, but it'\''s the only good way to split the line,
                # preserving all other whitespace.
                RET=${_LINE#*[  ]}
                return ${_LINE%%[       ]*}
              }'
++ set -- purge PURGE
++ eval 'db_purge () {
                echo "PURGE $@" >&3
                # Set to newline to get whole line.
                local IFS='\''
'\''
                local _LINE
                read -r _LINE
# Disgusting, but it'\''s the only good way to split the line,
                # preserving all other whitespace.
                RET=${_LINE#*[  ]}
                return ${_LINE%%[       ]*}
              }'
++ set -- metaget METAGET
++ eval 'db_metaget () {
                echo "METAGET $@" >&3
                # Set to newline to get whole line.
                local IFS='\''
'\''
                local _LINE
                read -r _LINE
# Disgusting, but it'\''s the only good way to split the line,
                # preserving all other whitespace.
                RET=${_LINE#*[  ]}
                return ${_LINE%%[       ]*}
              }'
++ set -- version VERSION
++ eval 'db_version () {
                echo "VERSION $@" >&3
                # Set to newline to get whole line.
                local IFS='\''
'\''
                local _LINE
                read -r _LINE
# Disgusting, but it'\''s the only good way to split the line,
                # preserving all other whitespace.
                RET=${_LINE#*[  ]}
                return ${_LINE%%[       ]*}
              }'
++ set -- clear CLEAR
++ eval 'db_clear () {
                echo "CLEAR $@" >&3
                # Set to newline to get whole line.
                local IFS='\''
'\''
                local _LINE
                read -r _LINE
# Disgusting, but it'\''s the only good way to split the line,
                # preserving all other whitespace.
                RET=${_LINE#*[  ]}
                return ${_LINE%%[       ]*}
              }'
++ set -- remove
++ unset _old_opts
+ db_unregister shared/default-x-display-manager
+ echo 'UNREGISTER shared/default-x-display-manager'
+ local 'IFS=
'
+ local _LINE
+ read -r _LINE
+ RET=shared/default-x-display-manager doesn't exist
+ return 10
dpkg: error processing xdm (--remove):
 subprocess pre-removal script returned error exit status 10
+ THIS_PACKAGE=xdm
+ THIS_SCRIPT=postinst
+ trap 'message; message "Received signal. Aborting xdm package postinst script."; message; exit 1' 1 2 3 15
+ command -v readlink
+ . /usr/share/debconf/confmodule
++ '[' '!' '' ']'
++ exec /usr/share/debconf/frontend /var/lib/dpkg/info/xdm.postinst abort-remove
dpkg: error while cleaning up:
 subprocess post-installation script returned error exit status 10
Errors were encountered while processing:
 xdm
E: Sub-process /usr/bin/dpkg returned an error code (1)


Noticing the line "+RET=shared/default-x-display-manager doesn't exist", I did a "locate default-x-display-manager" and found nothing. Solving this error might solve the xdm issue, but it does nothing for the other 7 packages. Nor do I have any idea where/what this "default-x-display-manager" is/should be.

I'm down to looking at a rebuild, which I am really, really loathe to do, since that's the solution in the Microsoft world and isn't supposed to be the solution for Linux, but unless one of you gurus can help me fix this, it's the only solution I have left.

Thanks!

Kent



Reply to: