[Pkg-sysvinit-devel] Bug#587843: initscripts: urandom needs /usr/bin/find

Kevin Mitchell kevmitch at math.sfu.ca
Fri Jul 2 06:08:14 UTC 2010


Package: initscripts
Version: 2.88dsf-10
Severity: normal

$remote_fs was removed from Required-Start: and Required-Stop: 
and accordingly, /usr/bin and /usr/sbin were removed from the $PATH in the last upgrade,
however /usr/bin/find is used on line 35 in assigning the variable
$SAVEDSIZE. Therefore,

# /etc/init.d/urandom start
/etc/init.d/urandom: 76: find: not found
[: 76: Illegal number: 

Kevin
-- System Information:
Debian Release: squeeze/sid
  APT prefers unstable
  APT policy: (600, 'unstable'), (500, 'testing'), (400, 'stable'), (300, 'experimental')
Architecture: amd64 (x86_64)

Kernel: Linux 2.6.34.000 (SMP w/2 CPU cores; PREEMPT)
Locale: LANG=en_GB, LC_CTYPE=en_GB (charmap=ISO-8859-1) (ignored: LC_ALL set to en_GB)
Shell: /bin/sh linked to /bin/dash

Versions of packages initscripts depends on:
ii  coreutils                     8.5-1      GNU core utilities
ii  debianutils                   3.3        Miscellaneous utilities specific t
ii  libc6                         2.11.2-2   Embedded GNU C Library: Shared lib
ii  lsb-base                      3.2-23.1   Linux Standard Base 3.2 init scrip
ii  mount                         2.17.2-3.1 Tools for mounting and manipulatin
ii  sysv-rc                       2.88dsf-10 System-V-like runlevel change mech
ii  sysvinit-utils                2.88dsf-10 System-V-like utilities

Versions of packages initscripts recommends:
ii  e2fsprogs                     1.41.12-2  ext2/ext3/ext4 file system utiliti
ii  psmisc                        22.11-1    utilities that use the proc file s

initscripts suggests no packages.

-- Configuration Files:
/etc/default/bootlogd changed:
BOOTLOGD_ENABLE=Yes
/etc/init.d/checkfs.sh changed:
PATH=/sbin:/bin:/usr/bin
FSCK_LOGFILE=/var/log/fsck/checkfs
[ "$FSCKFIX" ] || FSCKFIX=no
. /lib/init/vars.sh
. /lib/lsb/init-functions
. /lib/init/splash-functions-base
. /lib/init/usplash-fsck-functions.sh
. /lib/init/swap-functions.sh
do_start () {
	# See if we're on AC Power.  If not, we're not gonna run our
	# check.  If on_ac_power (in /usr/) is unavailable, behave as
	# before and check all file systems needing it.
	BAT=""
	fscheck="yes"
	if [ -f /fastboot ] || grep -s -w -i "fastboot" /proc/cmdline
	then
		[ "$fscheck" = yes ] && log_warning_msg "Fast boot enabled, so skipping file system check."
		fscheck=no
	fi
	#
	# Check the rest of the file systems.
	#
	if [ "$fscheck" = yes ] && [ ! "$BAT" ] && [ "$FSCKTYPES" != "none" ]
	then
		# Execute swapon command again, in case there are lvm
		# or md swap partitions.  fsck can suck RAM.
		swaponagain 'lvm and md'
		if [ -f /forcefsck ] || grep -s -w -i "forcefsck" /proc/cmdline
		then
			force="-f"
		else
			force=""
		fi
		if [ "$FSCKFIX" = yes ]
		then
			fix="-y"
		else
			fix="-a"
		fi
		spinner="-C"
		case "$TERM" in
		  dumb|network|unknown|"")
			spinner=""
			;;
		esac
		[ "$(uname -m)" = s390 ] && spinner=""  # This should go away
		FSCKTYPES_OPT=""
		[ "$FSCKTYPES" ] && FSCKTYPES_OPT="-t $FSCKTYPES"
		handle_failed_fsck() {
			log_failure_msg "File system check failed. 
A log is being saved in ${FSCK_LOGFILE} if that location is writable. 
Please repair the file system manually."
			log_warning_msg "A maintenance shell will now be started. 
CONTROL-D will terminate this shell and resume system boot."
			# Start a single user shell on the console
			if ! sulogin $CONSOLE
			then
				log_failure_msg "Attempt to start maintenance shell failed. 
Continuing with system boot in 5 seconds."
				sleep 5
			fi
		}
		if [ "$VERBOSE" = no ]
		then
			log_action_begin_msg "Checking file systems"
			if usplash_running; then
			    PROGRESS_FILE=`mktemp` || exit 1
			    set -m
			    logsave -s $FSCK_LOGFILE fsck -C3 -R -A $fix $force $FSCKTYPES_OPT >/dev/console 2>&1 3>$PROGRESS_FILE &
			    set +m
			    usplash_progress "$PROGRESS_FILE"
			    rm -f $PROGRESS_FILE
			else
			    splash_start_indefinite
			    logsave -s $FSCK_LOGFILE fsck $spinner -R -A $fix $force $FSCKTYPES_OPT
			    FSCKCODE=$?
			    splash_stop_indefinite
			fi
			if [ "$FSCKCODE" -gt 1 ]
			then
				log_action_end_msg 1 "code $FSCKCODE"
				handle_failed_fsck
			else
				log_action_end_msg 0
			fi
		else
			if [ "$FSCKTYPES" ]
			then
				log_action_msg "Will now check all file systems of types $FSCKTYPES"
			else
				log_action_msg "Will now check all file systems"
			fi
			splash_start_indefinite
			logsave -s $FSCK_LOGFILE fsck $spinner -V -R -A $fix $force $FSCKTYPES_OPT
			FSCKCODE=$?
			splash_stop_indefinite
			if [ "$FSCKCODE" -gt 1 ]
			then
				handle_failed_fsck
			else
				log_success_msg "Done checking file systems. 
A log is being saved in ${FSCK_LOGFILE} if that location is writable."
			fi
		fi
	fi
	rm -f /fastboot /forcefsck 2>/dev/null
}
case "$1" in
  start|"")
	do_start
	;;
  restart|reload|force-reload)
	echo "Error: argument '$1' not supported" >&2
	exit 3
	;;
  stop)
	# No-op
	;;
  *)
	echo "Usage: checkfs.sh [start|stop]" >&2
	exit 3
	;;
esac
:


-- no debconf information





More information about the Pkg-sysvinit-devel mailing list