Package: initscripts Version: 2.86.ds1-30 The line
fuser -k INT -m $DIRS is syntactically not correct it probably should be: fuser -k -INT -m $DIRS and similarly for another line with TERM instead of INT. I have a patch with some additional changes for the fuser usage that seemed like a good idea to me: 1. Replace INT with TERM and TERM with KILL. SIGINT is really only meant for interactive use and does not reliably terminate a process. SIGKILL is the typical last resort solution since it cannot be caught by the process. 2. Use return value of fuser instead of string comparison with fuser output to check for not yet terminated processes. 3. Put sleep after loop condition to prevent delay in case no processes are left immediately. 4. Use -s switch to prevent clutter. --- umountnfs.sh.old 2006-09-29 19:12:09.000000000 +0200 +++ umountnfs.sh 2006-10-03 00:25:58.993986124 +0200 @@ -84,18 +84,17 @@ # Kill all processes using the directories we try to umount if [ -x /bin/fuser ] ; then [ "$VERBOSE" = no ] || log_action_begin_msg "Asking non-system processes to terminate" - fuser -k INT -m $DIRS + fuser -k -TERM -s -m $DIRS [ "$VERBOSE" = no ] || log_action_end_msg 0 for count in 1 2 3 4 5; do # Wait up to 5 seconds + fuser -s -m $DIRS || break sleep 1 - [ -z "`fuser -m $DIRS 2> /dev/null`" ] && break done - pidsleft=`fuser -m $DIRS 2>/dev/null` - if [ "$pidsleft" ] ; then + if fuser -s -m $DIRS; then [ "$VERBOSE" = no ] || log_action_begin_msg "Killing non-system processes" - fuser -k TERM -m $DIRS + fuser -k -KILL -s -m $DIRS [ "$VERBOSE" = no ] || log_action_end_msg 0 fi else -- Markus -- To UNSUBSCRIBE, email to [EMAIL PROTECTED] with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]