Control: tags -1 patch Michael,
Thanks and apologies for the extreme delay here. Whilst this doesn't seem to cause any issues, I agree that it is less efficient than it could be. Samuel, On the only GNU hurd system I have access to (exodar is refusing connections today), /run is also a tmpfs. Is that now obligatory on Hurd as well? Do you see any problems for Hurd here? Below is a first attempt at a patch. Any comments? Thanks Mark diff --git a/debian/changelog b/debian/changelog index f52de029..f23c0c43 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,3 +1,12 @@ +sysvinit (3.15-6~rc1) UNRELEASED; urgency=medium + + * Drop mountnfs-bootclean.sh. + * mountall-bootclean.sh: only clean /tmp. + * checkroot-bootclean.sh: only clean /tmp. + * bootclean.sh: remove obsolete functions clean() and clean_all(). + + -- Mark Hindley <[email protected]> Mon, 27 Oct 2025 18:09:17 +0000 + sysvinit (3.15-5) unstable; urgency=medium * Release to unstable diff --git a/debian/initscripts.maintscript b/debian/initscripts.maintscript index 67968801..34849cbf 100644 --- a/debian/initscripts.maintscript +++ b/debian/initscripts.maintscript @@ -1 +1,2 @@ rm_conffile /etc/init.d/motd 2.93-3~ initscripts +rm_conffile /etc/init.d/mountnfs-bootclean.sh 3.15-6~ initscripts diff --git a/debian/initscripts.postinst b/debian/initscripts.postinst index 781a660b..701bdaf7 100755 --- a/debian/initscripts.postinst +++ b/debian/initscripts.postinst @@ -40,7 +40,7 @@ umask 022 INITSCRIPTS="mountkernfs.sh mount-configfs brightness hostname.sh mountdevsubfs.sh checkroot.sh \ checkroot-bootclean.sh checkfs.sh mountall.sh mountall-bootclean.sh \ - mountnfs.sh mountnfs-bootclean.sh bootmisc.sh urandom halt reboot \ + mountnfs.sh bootmisc.sh urandom halt reboot \ udev umountroot umountfs umountnfs.sh sendsigs killprocs single motd \ bootlogs rc.local rmnologin hwclock.sh kmod" diff --git a/debian/initscripts.postrm b/debian/initscripts.postrm index 25bbb932..d27e9cbd 100755 --- a/debian/initscripts.postrm +++ b/debian/initscripts.postrm @@ -7,7 +7,7 @@ set -e INITSCRIPTS="mountkernfs.sh mount-configfs brightness hostname.sh mountdevsubfs.sh checkroot.sh \ checkroot-bootclean.sh checkfs.sh mountall.sh mountall-bootclean.sh \ - mountnfs.sh mountnfs-bootclean.sh bootmisc.sh urandom halt reboot \ + mountnfs.sh bootmisc.sh urandom halt reboot \ udev umountroot umountfs umountnfs.sh sendsigs killprocs single motd \ bootlogs rc.local rmnologin hwclock.sh" diff --git a/debian/src/initscripts/etc/init.d/checkroot-bootclean.sh b/debian/src/initscripts/etc/init.d/checkroot-bootclean.sh index fef8dbce..d847ee2e 100755 --- a/debian/src/initscripts/etc/init.d/checkroot-bootclean.sh +++ b/debian/src/initscripts/etc/init.d/checkroot-bootclean.sh @@ -17,14 +17,14 @@ case "$1" in start | "") - # Clean /tmp, /run and /run/lock. Remove the .clean files to + # Clean /tmp. Remove the .clean files to # force initial cleaning. This is intended to allow cleaning # of directories masked by mounts while the system was # previously running, which would otherwise prevent them being # cleaned. rm -f /tmp/.clean /run/.clean /run/lock/.clean - clean_all + clean_tmp exit $? ;; restart | reload | force-reload) diff --git a/debian/src/initscripts/etc/init.d/mountall-bootclean.sh b/debian/src/initscripts/etc/init.d/mountall-bootclean.sh index dd8676b7..68f9c41b 100755 --- a/debian/src/initscripts/etc/init.d/mountall-bootclean.sh +++ b/debian/src/initscripts/etc/init.d/mountall-bootclean.sh @@ -15,8 +15,8 @@ case "$1" in start | "") - # Clean /tmp, /var/lock, /var/run - clean_all + # Clean /tmp + clean_tmp exit $? ;; restart | reload | force-reload) diff --git a/debian/src/initscripts/etc/init.d/mountnfs-bootclean.sh b/debian/src/initscripts/etc/init.d/mountnfs-bootclean.sh deleted file mode 100755 index 6345d51a..00000000 --- a/debian/src/initscripts/etc/init.d/mountnfs-bootclean.sh +++ /dev/null @@ -1,35 +0,0 @@ -#! /bin/sh -### BEGIN INIT INFO -# Provides: mountnfs-bootclean -# Required-Start: $local_fs mountnfs -# Required-Stop: -# Default-Start: S -# Default-Stop: -# X-Start-Before: bootmisc -# Short-Description: bootclean after mountnfs. -# Description: Clean temporary filesystems after -# network filesystems have been mounted. -### END INIT INFO - -. /lib/init/bootclean.sh - -case "$1" in - start | "") - # Clean /tmp, /var/lock, /var/run - clean_all - exit $? - ;; - restart | reload | force-reload) - echo "Error: argument '$1' not supported" >&2 - exit 3 - ;; - stop | status) - # No-op - ;; - *) - echo "Usage: mountnfs-bootclean.sh [start|stop]" >&2 - exit 3 - ;; -esac - -: diff --git a/debian/src/initscripts/lib/init/bootclean.sh b/debian/src/initscripts/lib/init/bootclean.sh index 9951201f..3fc6a340 100644 --- a/debian/src/initscripts/lib/init/bootclean.sh +++ b/debian/src/initscripts/lib/init/bootclean.sh @@ -160,50 +160,3 @@ clean_tmp() { log_progress_msg "/tmp" return 0 } - -clean() { - dir="$1" - findopts="$2" - - # Does not exist - [ -d "$dir" ] || return 1 - # Read-only filesystem? - [ -w "$dir" ] || return 0 - # tmpfs does not require cleaning - [ -f "$dir/.tmpfs" ] && return 0 - # Can clean? - checkflagfile "$dir" || return 0 - # Already cleaned - [ -f "${dir}/.clean" ] && return 0 - # Can't clean yet? - which find >/dev/null 2>&1 || return 1 - - cd "$dir" || { - log_action_end_msg 1 "bootclean: Could not cd to ${dir}." - return 1 - } - - [ "$VERBOSE" = no ] || log_action_begin_msg "Cleaning $dir" - - find . $findopts -delete || - { - report_err "$dir" - return 1 - } - [ "$VERBOSE" = no ] || log_action_end_msg 0 - mkflagfile "${dir}/.clean" || return 1 - log_progress_msg "$dir" - return 0 -} - -clean_all() { - which find >/dev/null 2>&1 || return 0 - log_begin_msg "Cleaning up temporary files..." - ES=0 - clean_tmp || ES=1 - clean /run "( -path /run/network/mountnfs -o ! -xtype d ! -name utmp ! -name innd.pid )" || ES=1 - clean /run/lock "! -type d" || ES=1 - clean /run/shm "! -type d" || ES=1 - log_end_msg $ES - return $ES -}

