1#!/bin/sh
2#
3# chkconfig: 345 81 35
4# description: Starts and stops the Samba smbd and nmbd daemons \
5#	       used to provide SMB network services.
6
7# Source function library.
8. /etc/rc.d/init.d/functions
9
10# Source networking configuration.
11. /etc/sysconfig/network
12
13# Check that networking is up.
14[ ${NETWORKING} = "no" ] && exit 0
15
16CONFIG=/etc/samba/smb.conf
17
18# Check that smb.conf exists.
19[ -f $CONFIG ] || exit 0
20
21# See how we were called.
22case "$1" in
23  start)
24	echo -n "Starting SMB services: "
25	daemon smbd -D 	
26	daemon nmbd -D 
27	echo
28	touch /var/lock/subsys/smb
29	;;
30  stop)
31	echo -n "Shutting down SMB services: "
32
33	## we have to get all the smbd process here instead of just the
34	## main parent (i.e. killproc) because it can take a long time
35	## for an individual process to process a TERM signal
36	smbdpids=`ps guax | grep smbd | grep -v grep | awk '{print $2}'`
37	for pid in $smbdpids; do
38		kill -TERM $pid
39	done
40	## nmbd is ok to kill using killproc()
41	killproc nmbd -TERM
42	rm -f /var/lock/subsys/smb
43	echo ""
44	;;
45  status)
46	status smbd
47	status nmbd
48	;;
49  restart)
50	echo -n "Restarting SMB services: "
51	$0 stop
52	$0 start
53	echo "done."
54	;;
55  *)
56	echo "Usage: smb {start|stop|restart|status}"
57	exit 1
58esac
59
60