From 5257ba51b9524b101533308024862e4344c8b6f6 Mon Sep 17 00:00:00 2001 From: Roy Marples Date: Wed, 11 Jul 2007 17:27:46 +0000 Subject: Don't unmount network filesystems in localmount or halt.sh, #175602. --- init.d/halt.sh | 7 ++++++- init.d/localmount | 10 ++++++++-- 2 files changed, 14 insertions(+), 3 deletions(-) (limited to 'init.d') diff --git a/init.d/halt.sh b/init.d/halt.sh index 1b4acca0..dfcacedd 100755 --- a/init.d/halt.sh +++ b/init.d/halt.sh @@ -65,7 +65,12 @@ if [ "${RC_UNAME}" = "Linux" ] ; then # We need the do_unmount function . "${RC_LIBDIR}"/sh/rc-mount.sh eindent - do_unmount "mount -n -o remount,ro" "^(/dev|/dev/pts|/dev/shm|/proc|/proc/.*|/sys)$" + fs= + for x in ${RC_NET_FS_LIST} ; do + fs="${fs}${fs:+|}${x}" + done + [ -n "${fs}" ] && fs="^(${fs})$" + do_unmount "mount -n -o remount,ro" "^(/dev|/dev/pts|/dev/shm|/proc|/proc/.*|/sys)$" "" "" "${fs}" eoutdent eend $? unmounted=$? diff --git a/init.d/localmount b/init.d/localmount index bf12638b..18d84a91 100755 --- a/init.d/localmount +++ b/init.d/localmount @@ -202,10 +202,16 @@ stop() { do_unmount "umount -d" "${no_umounts}" "^/dev/loop" eoutdent - # Now everything else + # Now everything else, except network filesystems as the + # network should be down by this point. einfo "Unmounting filesystems" eindent - do_unmount "umount" "${no_umounts}" + local fs= + for x in ${RC_NET_FS_LIST} ; do + fs="${fs}${fs:+|}${x}" + done + [ -n "${fs}" ] && fs="^(${fs})$" + do_unmount "umount" "${no_umounts}" "" "" "${fs}" eoutdent return 0 -- cgit v1.2.3