Package: discover1
Version: 1.7.22
Severity: normal
Usertags: obsolete-initscript
*** Please type your report below this line ***
Hi,
------------------------------------------------------------
# sudo dpkg-reconfigure insserv
info: Checking if it is safe to convert to dependency based boot.
error: Obsolete conffile /etc/init.d/discover left behind by package discover1
info: Please check out this manually.
info: Refusing to convert boot sequence until this is fixed
info: See http://wiki.debian.org/LSBInitScripts/DependencyBasedBoot
info: for more information on how to solve these issues. Most likely,
info: it is a bug in the binary package with the init.d script in
info: question, and not with insserv.
error: Unable to enable dependency based boot system.
------------------------------------------------------------
And here's the obsolete script:
------------------------------------------------------------
# dpkg-query -W -f='${Conffiles}\n' discover1
/etc/discover.conf 909aa5c740bbf1fa23d88be8d175e049
/etc/discover.conf-2.6 c486ab1e23b205b82006311ef34ba73d
/etc/init.d/discover fac8bbcb8d1d0c1f8dbd189e7687aba9 obsolete
# md5sum /etc/init.d/discover
fac8bbcb8d1d0c1f8dbd189e7687aba9 /etc/init.d/discover
------------------------------------------------------------
The contents of /etc/init.d/discover:
------------------------------------------------------------
#!/bin/sh
### BEGIN INIT INFO
# Provides: discover
# Required-Start: mountdevsubfs checkroot $local_fs
# Required-Stop:
# Default-Start: S
# Default-Stop:
### END INIT INFO
set -e
test -x /sbin/discover || exit 0
# Only work with discover version 1, not with version 2
case "`/sbin/discover --version`" in
"discover version 1"*)
break
;;
*)
exit 0
;;
esac
# file that determines the discover program's default behavior
CONFFILE=/etc/discover.conf
# list of modules for which to skip loading attempts
SKIPFILE=/etc/discover-autoskip.conf
# file that controls this init script's management of device symlinks
INITFILE=/etc/default/discover
# module we're loading, if it crashes then we know the culprit and can skip it
CRASHFILE=/lib/discover/crash
# cache, used more than once
KVERS=$(uname -r)
case "$1" in
start|restart) ;;
stop|reload|force-reload) exit 0 ;;
*) echo "Usage: $0 {start|restart}"; exit 1 ;;
esac
# Load init script parameters.
if [ -r $INITFILE ]; then
. $INITFILE
fi
if [ -f /lib/lsb/init-functions ]; then
. /lib/lsb/init-functions
else
log_begin_msg() { echo "$@"; }
log_success_msg() { echo "$@"; }
log_warning_msg() { echo "$@"; }
fi
. /etc/default/rcS
discover_uniq() {
local result=""
while read module; do
if ! ( echo "$result" | grep -q "$module " ); then
result="$result $module "
fi
done
echo "$result"
}
if [ -f $CRASHFILE ]
then
# The system crashed trying to load a module during the last boot
# cycle, so add an appropriate "skip" line to the skip file:
echo "skip $(<$CRASHFILE)" >> $SKIPFILE
rm -f $CRASHFILE
sync
fi
read_configuration()
{
filename="$1"
if [ ! -f "$1" ]; then return; fi
while read action arg argb; do
case "$action" in
enable | disable) DISCOVER_ARGS="$DISCOVER_ARGS --$action=$arg" ;;
skip) SKIPLIST="$SKIPLIST $arg"
;;
boot) TYPES="$TYPES $(echo $arg | sed 's/,/ /g')" ;;
map)
under=$(echo $arg | sed 's/-/_/g')
case "$KVERS" in
2.6.* | 2.5.*) argb=$(echo $argb | sed 's/-/_/g') ;;
esac
eval "map_$under=$argb"
;;
esac
done < "$filename"
}
read_configuration "$CONFFILE"
case "$KVERS" in
2.6.* | 2.5.*) read_configuration "$CONFFILE-2.6" ;;
esac
read_configuration "$SKIPFILE"
SKIPFILE_DIR="/etc/discover.d"
if [ -d "$SKIPFILE_DIR" ]; then
for part in $(run-parts --list "$SKIPFILE_DIR" 2>/dev/null || true); do
read_configuration "$part"
done
case "$KVERS" in
2.6.* | 2.5.*)
if [ -d "$SKIPFILE_DIR/2.6" ]; then
for part in $(run-parts --list "$SKIPFILE_DIR/2.6" 2>/dev/null || true); do
read_configuration "$part"
done
fi
;;
esac
fi
# Detect hardware:
log_begin_msg "Detecting hardware..."
MODULES=$(discover $DISCOVER_ARGS --module $TYPES | discover_uniq)
# Get rid of ide-scsi for kernels that don't need it. This is a horrible hack,
# but since we're retiring this version anyway I don't care
case "$KVERS" in
2.[0-4].*) true;;
*) MODULES=$(echo $MODULES | sed -e 's/ide-scsi //' -e 's/-/_/g');;
esac
if [ "$VERBOSE" != no ]; then
log_success_msg "Discovered hardware for these modules: $MODULES"
fi
skip()
{
echo "$SKIPLIST" | grep -wq -e "$1"
}
get_aliases_regexp() {
searchmod="$(echo $1 | sed -e 's#\(-\|_\)#(-|_)#g')"
search=""
if [ -e "/etc/modprobe.conf" ]; then search="$search /etc/modprobe.conf"; fi
if [ -e "/etc/modules.conf" ]; then search="$search /etc/modules.conf"; fi
if [ -n "$search" ]; then
grep -h '^alias' $search | ( while read dummy alias module; do
if [ "$dummy" = alias ]; then
if [ "$1" = "$alias" ]; then
echo -n "|$module"
elif [ "$1" = "$module" ]; then
echo -n "|$alias"
fi
fi
done ) | sed 's/*/\\*/g' | # Quote regex chars
( case "$KVERS" in
2.6.* | 2.5.*) sed 's/-/_/g' ;;
*) cat ;;
esac
)
fi
}
# Determine if the module is already loaded
is_loaded() {
module="$1"
aliases="$(get_aliases_regexp $1)"
# No cut(1) without /usr
sed 's/ .*$//' /proc/modules | grep -qE "^(${module}${aliases})\$"
}
# Load the appropriate modules:
for MODULE in $MODULES
do
# See if we should skip $MODULE:
if [ "$MODULE" = ignore ] || [ "$MODULE" = unknown ]
then
continue
fi
over=$(echo $MODULE | sed 's/-/_/g')
MAPPED=$(eval "echo \$map_$over")
if [ -n "$MAPPED" ]; then
MODULE=$MAPPED
fi
if skip $MODULE
then
if [ "$VERBOSE" != no ]; then
log_warning_msg "$MODULE disabled in configuration."
fi
continue
fi
case "$MODULE" in
Server:*)
continue
;;
esac
if is_loaded "$MODULE" ; then
if [ "$VERBOSE" != no ]; then
log_warning_msg "Skipping already loaded module $MODULE."
fi
continue
fi
if ! (modprobe -n ${MODULE}) > /dev/null 2>&1
then
if [ "$VERBOSE" != no ]; then
log_warning_msg "Skipping unavailable/built-in $MODULE module."
fi
continue
fi
if [ "$VERBOSE" != no ]; then
log_success_msg "Loading $MODULE module..."
fi
# Note the module being loaded in $CRASHFILE. If loading
# the module crashes the machine, this file will exist at the next
# boot, and we'll add an appropriate "skip" line to the conffile so we
# don't try to load it again.
echo $MODULE > $CRASHFILE
sync
# '|| true' make sure we start up, even if one module fails to load.
modprobe $MODULE || true
# The module loaded without incident, so we can safely remove the crash
# file.
rm -f $CRASHFILE
sync
done
# vim:ai:et:sts=4:sw=4:tw=0:
------------------------------------------------------------
Sami
-- Package-specific info:
lspci:
00:00.0 Host bridge [0600]: Intel Corporation Mobile PM965/GM965/GL960 Memory Controller Hub [8086:2a00] (rev 0c)
00:02.0 VGA compatible controller [0300]: Intel Corporation Mobile GM965/GL960 Integrated Graphics Controller [8086:2a02] (rev 0c)
00:02.1 Display controller [0380]: Intel Corporation Mobile GM965/GL960 Integrated Graphics Controller [8086:2a03] (rev 0c)
00:19.0 Ethernet controller [0200]: Intel Corporation 82562GT 10/100 Network Connection [8086:10c4] (rev 03)
00:1a.0 USB Controller [0c03]: Intel Corporation 82801H (ICH8 Family) USB UHCI Contoller #4 [8086:2834] (rev 03)
00:1a.7 USB Controller [0c03]: Intel Corporation 82801H (ICH8 Family) USB2 EHCI Controller #2 [8086:283a] (rev 03)
00:1b.0 Audio device [0403]: Intel Corporation 82801H (ICH8 Family) HD Audio Controller [8086:284b] (rev 03)
00:1c.0 PCI bridge [0604]: Intel Corporation 82801H (ICH8 Family) PCI Express Port 1 [8086:283f] (rev 03)
00:1c.1 PCI bridge [0604]: Intel Corporation 82801H (ICH8 Family) PCI Express Port 2 [8086:2841] (rev 03)
00:1c.4 PCI bridge [0604]: Intel Corporation 82801H (ICH8 Family) PCI Express Port 5 [8086:2847] (rev 03)
00:1d.0 USB Controller [0c03]: Intel Corporation 82801H (ICH8 Family) USB UHCI Controller #1 [8086:2830] (rev 03)
00:1d.1 USB Controller [0c03]: Intel Corporation 82801H (ICH8 Family) USB UHCI Controller #2 [8086:2831] (rev 03)
00:1d.2 USB Controller [0c03]: Intel Corporation 82801H (ICH8 Family) USB UHCI Controller #3 [8086:2832] (rev 03)
00:1d.7 USB Controller [0c03]: Intel Corporation 82801H (ICH8 Family) USB2 EHCI Controller #1 [8086:2836] (rev 03)
00:1e.0 PCI bridge [0604]: Intel Corporation 82801 Mobile PCI Bridge [8086:2448] (rev f3)
00:1f.0 ISA bridge [0601]: Intel Corporation 82801HEM (ICH8M) LPC Interface Controller [8086:2815] (rev 03)
00:1f.1 IDE interface [0101]: Intel Corporation 82801HBM/HEM (ICH8M/ICH8M-E) IDE Controller [8086:2850] (rev 03)
00:1f.2 SATA controller [0106]: Intel Corporation 82801HBM/HEM (ICH8M/ICH8M-E) SATA AHCI Controller [8086:2829] (rev 03)
10:00.0 Network controller [0280]: Intel Corporation PRO/Wireless 3945ABG Network Connection [8086:4222] (rev 02)
lsusb:
discover:
:::Intel Corporation Mobile PM965/GM965/GL960 Memory Controller Hub
:::Intel Corporation 82801H (ICH8 Family) PCI Express Port 1
:::Intel Corporation 82801H (ICH8 Family) PCI Express Port 2
:::Intel Corporation 82801H (ICH8 Family) PCI Express Port 5
i810_rng:::Intel Corporation 82801 Mobile PCI Bridge
:::Intel Corporation 82801HEM (ICH8M) LPC Interface Controller
:::MATSHITA DVD-RAM UJ-861H
e1000:::Intel Corporation 82562GT 10/100 Network Connection
:::Intel Corporation PRO/Wireless 3945ABG Network Connection
:::Intel Corporation 82801HBM/HEM (ICH8M/ICH8M-E) IDE Controller
:::Intel Corporation 82801H (ICH8 Family) USB UHCI Contoller #4
:::Intel Corporation 82801H (ICH8 Family) USB2 EHCI Controller #2
:::Intel Corporation 82801H (ICH8 Family) USB UHCI Controller #1
:::Intel Corporation 82801H (ICH8 Family) USB UHCI Controller #2
:::Intel Corporation 82801H (ICH8 Family) USB UHCI Controller #3
:::Intel Corporation 82801H (ICH8 Family) USB2 EHCI Controller #1
:XFree86:intel:Intel Corporation Mobile GM965/GL960 Integrated Graphics Controller
:unknown:unknown:Intel Corporation Mobile GM965/GL960 Integrated Graphics Controller
:::ATA FUJITSU MHY2120B
discover (video):
Intel Corporation Mobile GM965/GL960 Integrated Graphics Controller XFree86 intel
Intel Corporation Mobile GM965/GL960 Integrated Graphics Controller unknown unknown
loaded modules:
8086:2a00 intel_agp
8086:10c4 e1000
8086:2834 uhci_hcd
8086:283a ehci_hcd
8086:284b snd_hda_intel
8086:2830 uhci_hcd
8086:2831 uhci_hcd
8086:2832 uhci_hcd
8086:2836 ehci_hcd
8086:2850 ata_piix
8086:2829 ahci
8086:4222 iwl3945
-- System Information:
Debian Release: lenny/sid
APT prefers unstable
APT policy: (500, 'unstable'), (500, 'stable')
Architecture: amd64 (x86_64)
Kernel: Linux 2.6.24.2
Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/bash
Versions of packages discover1 depends on:
ii discover1-data 2.2008.01.12 Data lists for Discover hardware d
ii libc6 2.7-9 GNU C Library: Shared libraries
ii libdiscover1 1.7.22 hardware identification library
discover1 recommends no packages.
-- no debconf information
Attachment:
signature.asc
Description: Digital signature