Bug#28267: marked as done (sysvinit: cyclic dependency with libc6)
Your message dated Sun, 7 Feb 1999 19:54:09 -0800
with message-id <v04104418b2decee150a6@[206.163.71.146]>
and subject line Closing fixed bugs.
has caused the attached bug report to be marked as done.
This means that you claim that the problem has been dealt with.
If this is not the case it is now your responsibility to reopen the
bug report if necessary, and/or fix the problem forthwith.
(NB: If you are a system administrator and have no idea what I'm
talking about this indicates a serious mail system misconfiguration
somewhere. Please contact me immediately.)
Ian Jackson
(administrator, Debian bugs database)
Received: (at submit) by bugs.debian.org; 20 Oct 1998 17:45:58 +0000
Received: (qmail 3254 invoked from network); 20 Oct 1998 17:45:56 -0000
Received: from firewall.matav.hu (HELO matav.hu) (145.236.254.102)
by master.debian.org with SMTP; 20 Oct 1998 17:45:56 -0000
Received: from tiivs7.tii.matav.hu ([145.236.48.148]) by firewall.matav.hu with ESMTP id <131274>; Tue, 20 Oct 1998 19:45:41 +0100
Received: from bunuel.tii.matav.hu (145.236.49.177) by tiivs7.tii.matav.hu (MX
V5.0) with SMTP; Tue, 20 Oct 1998 19:39:29 +0200
Received: (qmail 1004 invoked by uid 1000); 20 Oct 1998 17:43:47 -0000
Date: Tue, 20 Oct 1998 18:43:47 +0100
Message-ID: <19981020174347.1003.qmail@bunuel.tii.matav.hu>
From: Magosanyi Arpad <mag@bunuel.tii.matav.hu>
Subject: sysvinit: cyclic dependency with libc6
To: submit@bugs.debian.org
X-Mailer: bug 3.1.0
Package: sysvinit
Version: 2.71-2
libc6 2.0.7u needs the 'u' argument to init, which isn't in my current version.
sysvinit needs libc6 2.0.7u...
mag@bunuel:~/local/deb#sudo dpkg -i sysvinit_2.75-4.deb
dpkg: regarding sysvinit_2.75-4.deb containing sysvinit, pre-dependency problem:
sysvinit pre-depends on libc6 (>= 2.0.7u)
libc6 latest configured version is 2.0.7t-1.
dpkg: error processing sysvinit_2.75-4.deb (--install):
pre-dependency problem - not installing sysvinit
Errors were encountered while processing:
sysvinit_2.75-4.deb
-- System Information
Debian Release: 1.3
Kernel Version: Linux bunuel 2.0.35 #12 Thu Jul 23 09:39:06 CEST 1998 i586 unknown
Versions of the packages sysvinit depends on:
libc5 Version: 5.4.38-1
--- Begin /etc/init.d/boot (modified conffile)
TMPTIME=0
SULOGIN=no
DELAYLOGIN=yes
GMT="-u"
VERBOSE=yes
EDITMOTD=yes
PATH=/usr/local/sbin:/usr/sbin:/usr/bin:/sbin:/bin
umask 022
export PATH VERBOSE
if [ -x /sbin/unconfigured.sh ]
then
/sbin/unconfigured.sh
fi
trap ":" INT QUIT TSTP
if [ -r /etc/kbd/default.map ]
then
loadkeys /etc/kbd/default.map
fi
[ "$SULOGIN" = yes ] && sulogin -t 30 $CONSOLE
if [ "$VERBOSE" != no ]
then
echo
echo "Running /etc/init.d/boot..."
echo
fi
if [ -x /sbin/swapon ]
then
[ "$VERBOSE" != no ] && echo "Activating swap..."
swapon -a 2>/dev/null
fi
[ -x /sbin/update ] && update
if [ -f /fastboot ]
then
echo "Fast boot, no file system check"
else
#
# Ensure that root is quiescent and read-only before fsck'ing.
#
mount -n -o remount,ro /
if [ $? = 0 ]
then
echo "Checking root file system..."
fsck -a /
#
# If there was a failure, drop into single-user mode.
#
# NOTE: "failure" is defined as exiting with a return code of
# 2 or larger. A return code of 1 indicates that file system
# errors were corrected but that the boot may proceed.
#
if [ $? -gt 1 ]
then
# Surprise! Re-directing from a HERE document (as in
# "cat << EOF") won't work, because the root is read-only.
echo
echo "fsck failed. Please repair manually and reboot. Please note"
echo "that the root file system is currently mounted read-only. To"
echo "remount it read-write:"
echo
echo " # mount -n -o remount,rw /"
echo
echo "CONTROL-D will exit from this shell and REBOOT the system."
echo
# Start a single user shell on the console
/sbin/sulogin $CONSOLE
reboot -f
fi
else
echo "*** ERROR! Cannot fsck root fs because it is not mounted read-only!"
echo
fi
fi
mount -n -o remount,rw /
rm -f /etc/mtab~ /etc/nologin
: > /etc/mtab
mount -o remount,rw /
mount /proc
if [ -x /etc/init.d/isapnp ]
then
/etc/init.d/isapnp start
fi
if [ -x /etc/init.d/modutils ]
then
/etc/init.d/modutils start
elif [ -x /etc/init.d/modules ]
then
/etc/init.d/modules start
fi
if [ -s /etc/mdtab -a -f /sbin/mdadd ]
then
mdadd -ar
fi
if [ ! -f /fastboot ]
then
echo "Checking all file systems..."
fsck -R -A -a
if [ $? -gt 1 ]
then
echo
echo "fsck failed. Please repair manually."
echo
echo "CONTROL-D will exit from this shell and continue system startup."
echo
# Start a single user shell on the console
/sbin/sulogin $CONSOLE
fi
fi
rm -f /fastboot
if [ "$DELAYLOGIN" = yes ]
then
echo "System bootup in progress - please wait" > /etc/nologin
cp /etc/nologin /etc/nologin.boot
fi
[ "$VERBOSE" != no ] && echo "Mounting local file systems ..."
mount -avt nonfs,noproc
swapon -a 2>/dev/null
hostname --file /etc/hostname
if [ -x /etc/init.d/network ]
then
/etc/init.d/network start
fi
echo "Mounting remote file systems ..."
mount -a -t nfs
if [ ! -f /etc/adjtime ]
then
echo "0.0 0 0.0" > /etc/adjtime
fi
clock -a $GMT
if [ "$VERBOSE" != no ]
then
echo
echo "Local time: `date`"
echo
fi
[ "$VERBOSE" != no ] && echo -n "Cleaning: /tmp "
( cd /tmp && \
find . -xdev \
! -ctime -$TMPTIME \
! -name . \
! \( -name lost+found -uid 0 \) \
! \( -name quota.user -uid 0 \) \
! \( -name quota.group -uid 0 \) \
-depth -exec rm -rf -- {} \; )
[ "$VERBOSE" != no ] && echo -n "/var/lock "
( cd /var/lock && find . -type f -exec rm -f -- {} \; )
[ "$VERBOSE" != no ] && echo -n "/var/run "
( cd /var/run && \
find . ! -type d ! -name utmp ! -name innd.pid ! -name random-seed \
-exec rm -f -- {} \; )
: > /var/run/utmp
[ "$VERBOSE" != no ] && echo "."
/etc/init.d/urandom start
run-parts /etc/rc.boot
chmod 666 /dev/tty[p-za-e][0-9a-f]
chown root.tty /dev/tty[p-za-e][0-9a-f]
if [ "$EDITMOTD" != no ]
then
uname -a > /tmp/motd
sed 1d /etc/motd >> /tmp/motd
mv /tmp/motd /etc/motd
fi
if [ -x /root/setup.sh ]
then
/root/setup.sh
fi
--- End /etc/init.d/boot
--- Begin /etc/init.d/rc (modified conffile)
# Set onlcr to avoid staircase effect.
stty onlcr 0>&1
# Is this done because RUNLEVEL and PREVLEVEL could be read-only?
#
# Now find out what the current and what the previous runlevel are.
runlevel=$RUNLEVEL
# Get first argument. Set new runlevel to this argument.
[ "$1" != "" ] && runlevel="$1"
# Is this necessary?
prevlevel=${PREVLEVEL:="N"}
# Is this necessary?
CFGFILE="/etc/runlevel.conf"
BAKCFG="/etc/runlevel.fallback"
LOCKFILE="/var/lock/runlevel.lock"
TMPFILE="/tmp/runlevel.tmp"
# wait for any lock to vanish (but only when not booting)
i=0
while [ -f "$LOCKFILE" -a "$previous" != "N" ]
do
read pid < "$LOCKFILE"
if ! kill -0 $pid &> /dev/null
then
echo "$0: found stale lockfile '$LOCKFILE'. Ignoring it." >&2
break
fi
if [ "$i" -gt "10" ]
then
echo "Process no. '$pid' is locking the configuration database. Terminating." >&2
exit 1
fi
sleep 2
let i+=1
done
# This script is vital so we better keep an old copy of the configuration
# file as fallsave-configuration. This does not handle a broken config
# file, though.
if [ ! -f "$CFGFILE" ]
then
echo "Missing configuration file '$CFGFILE' using fallback config."
# This could be a link to /var/backup/runlevel.conf.
if [ ! -f "$BAKCFG" ]
then
echo "No configuration file at all. You're in serious trouble now. Aborting."
exit 1
fi
CFGFILE="$BAKCFG"
fi
function element() {
local element list IFS
element="$1"
case "$element" in
reboot | R) element=0 ;;
single | S) element=1 ;;
halt | H) element=6 ;;
esac
[ "$2" = "in" ] && shift
list="$2"
[ "$list" = "-" ] && return 1
[ "$list" = "*" ] && return 0
IFS=","
set -- $list
case $element in
"$1" | "$2" | "$3" | "$4" | "$5" | "$6" | "$7" | "$8" | "$9")
return 0
esac
return 1
}
# CMDLIST ensures scripts are killed in reversed order
CMDLIST="set centerline=here"
# Experimental: To tell the scripts they are not called manually.
# (should be unset in init.d-scripts)
CALL_FROM_RC="yes"
while read SORT_NO OFF_LEVELS ON_LEVELS CMD OPTIONS
do
case "$SORT_NO" in
"#*" | "") continue ;;
esac
[ ! -x "$CMD" ] && continue
# continue only if CMD was not started in previous runlevel
if element "$runlevel" in "$ON_LEVELS" \
&& ! element "$prevlevel" in "$ON_LEVELS"
then
# append CMD to the list of
CMDLIST="$CMDLIST; $CMD start"
continue
fi
# only kill when prevlevel != N
if element "$runlevel" in "$OFF_LEVELS" \
&& ! element "$prevlevel" in "$OFF_LEVELS" \
&& [ "$prevlevel" != "N" ]
then
# prepending ensures scripts are killed in "reversed" order
CMDLIST="$CMD stop; $CMDLIST"
fi
done < $CFGFILE
# Execute the commands collected above
sh -c "$CMDLIST"
--- End /etc/init.d/rc
Reply to: