autofs-5.0.7 - dont wait forever to restart From: Ian Kent When restarting autofs the daemon must be stopped before it is started again if it is to function properly. At the moment the init script waits forever which is not ok if the daemon won't exit for some reason. So, if the daemon is still running after the stop, run stop() again, wait a bit longer and if it still hasn't stopped kill it with a SIGKILL to clear the way for the startup. --- CHANGELOG | 1 + redhat/autofs.init.in | 13 ++++++++++--- 2 files changed, 11 insertions(+), 3 deletions(-) diff --git a/CHANGELOG b/CHANGELOG index 6051723..93b9c26 100644 --- a/CHANGELOG +++ b/CHANGELOG @@ -5,6 +5,7 @@ - fix ipv6 proximity calculation. - fix parse buffer initialization. - fix typo in automount(8). +- dont wait forever to restart. 25/07/2012 autofs-5.0.7 ======================= diff --git a/redhat/autofs.init.in b/redhat/autofs.init.in index ec6d5d6..cd5cb34 100644 --- a/redhat/autofs.init.in +++ b/redhat/autofs.init.in @@ -129,9 +129,16 @@ function restart() { status autofs > /dev/null 2>&1 if [ $? -eq 0 ]; then stop - while [ -n "`pidof $prog`" ] ; do - sleep 5 - done + if [ -n "`pidof $prog`" ]; then + # If we failed to stop, try at least one more time + # after waiting a little while + sleep 20 + stop + auto_pid=`pidof $prog` + if [ -n "$auto_pid" ]; then + kill -9 $auto_pid + fi + fi fi start }