#!/bin/sh # # chkconfig: 345 83 42 # description: Starts and stops the Samba smbd and nmbd daemons \ # used to provide SMB network services. # Source function library. . /etc/rc.d/init.d/functions # Source networking configuration. . /etc/sysconfig/network # Check that networking is up. [ ${NETWORKING} = "no" ] && exit 0 CONFIG=/usr/local/samba/lib/smb.conf # Check that smb.conf exists. [ -f $CONFIG ] || exit 0 # See how we were called. case "$1" in start) echo -n "Starting SMB services: " daemon /usr/local/samba/sbin/smbd -D daemon /usr/local/samba/sbin/nmbd -D echo touch /var/lock/subsys/smb ;; stop) echo -n "Shutting down SMB services: " ## we have to get all the smbd process here instead of just the ## main parent (i.e. killproc) because it can take a long time ## for an individual process to process a TERM signal smbdpids=`ps guax | grep smbd | grep -v grep | awk '{print $2}'` for pid in $smbdpids; do kill -TERM $pid done ## nmbd is ok to kill using killproc() killproc nmbd -TERM rm -f /var/lock/subsys/smb echo "" ;; status) status smbd status nmbd ;; restart)