#!/sbin/runscript # Copyright 1999-2010 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 # $Header: $ DAEMON=/usr/sbin/automount PIDFILE=/var/run/autofs.pid DEVICE=autofs depend() { need localmount use ypbind nfs slapd portmap net } opts="start stop restart status reload" start() { ebegin "Starting automounter" # Ensure autofs support is loaded grep -q autofs /proc/filesystems || modprobe -q autofs4 if [ $? -ne 0 ]; then eend 1 "No autofs support available" return 1 fi # Check misc device if [ -n "${USE_MISC_DEVICE}" -a "${USE_MISC_DEVICE}" = "yes" ]; then sleep 1 if [ -e "/proc/misc" ]; then MINOR=$(awk "/${DEVICE}/ {print \$1}" /proc/misc) [ -n "${MINOR}" -a ! -c "/dev/${DEVICE}" ] && \ mknod -m 0600 "/dev/${DEVICE}" c 10 ${MINOR} if [ $? -ne 0 ]; then eend 1 "Could not create '/dev/${DEVICE}'" return 1 fi fi [ -x /sbin/restorecon -a -c "/dev/${DEVICE}" ] && \ /sbin/restorecon "/dev/${DEVICE}" if [ $? -ne 0 ]; then eend 1 "Failed to execute '/sbin/restorecon \"/dev/${DEVICE}\"'" return 1 fi else [ -c "/dev/${DEVICE}" ] && rm -rf "/dev/${DEVICE}" fi start-stop-daemon --start --exec ${DAEMON} -- -p ${PIDFILE} ${OPTIONS} eend $? } stop() { ebegin "Stopping automounter" start-stop-daemon --stop --quiet -R TERM/45 -p ${PIDFILE} eend $? } reload() { ebegin "Reloading automounter" if [ ! -r "${PIDFILE}" ]; then eend 1 "automount not running" else kill -HUP $(cat "${PIDFILE}") 2> /dev/null eend $? fi }