• Home
  • History
  • Annotate
  • Line#
  • Navigate
  • Raw
  • Download
  • only in /asuswrt-rt-n18u-9.0.0.4.380.2695/release/src-rt-6.x.4708/router/samba-3.0.25b/packaging/RHEL/setup/
1#!/bin/sh
2#
3# chkconfig: - 91 35
4# description: Starts and stops the Samba smbd and nmbd daemons \
5#	       used to provide SMB network services.
6#
7# pidfile: /var/run/samba/smbd.pid
8# pidfile: /var/run/samba/nmbd.pid
9# config:  /etc/samba/smb.conf
10
11
12# Source function library.
13if [ -f /etc/init.d/functions ] ; then
14  . /etc/init.d/functions
15elif [ -f /etc/rc.d/init.d/functions ] ; then
16  . /etc/rc.d/init.d/functions
17else
18  exit 0
19fi
20
21# Avoid using root's TMPDIR
22unset TMPDIR
23
24# Source networking configuration.
25. /etc/sysconfig/network
26
27if [ -f /etc/sysconfig/samba ]; then
28   . /etc/sysconfig/samba
29fi
30
31# Check that networking is up.
32[ ${NETWORKING} = "no" ] && exit 0
33
34# Check that smb.conf exists.
35[ -f /etc/samba/smb.conf ] || exit 0
36
37# Check that we can write to it... so non-root users stop here
38[ -w /etc/samba/smb.conf ] || exit 0
39
40# Check whether "netbios disabled" is true
41ISNETBIOSDISABLED=$(testparm -s 2>/dev/null | \
42	sed -n '/\[global\]/,/^$/p' | \
43	grep "disable netbios = Yes" | \
44	awk 'BEGIN{FS=" = "}{print $2}')
45
46
47RETVAL=0
48
49
50start() {
51	KIND="SMB"
52	echo -n $"Starting $KIND services: "
53	daemon smbd $SMBDOPTIONS
54	RETVAL=$?
55	echo
56	KIND="NMB"
57	if [ x"$ISNETBIOSDISABLED" != x"Yes" ]; then
58		echo -n $"Starting $KIND services: "
59		daemon nmbd $NMBDOPTIONS
60		RETVAL2=$?
61		echo
62		[ $RETVAL -eq 0 -a $RETVAL2 -eq 0 ] && touch /var/lock/subsys/smb || \
63			RETVAL=1
64	else
65		[ $RETVAL -eq 0 ] && touch /var/lock/subsys/smb || \
66			RETVAL=1
67	fi
68	return $RETVAL
69}	
70
71stop() {
72	KIND="SMB"
73	echo -n $"Shutting down $KIND services: "
74	killproc smbd
75	RETVAL=$?
76	[ $RETVAL -eq 0 ] && rm -f /var/run/smbd.pid
77	echo
78	KIND="NMB"
79	if [ x"$ISNETBIOSDISABLED" != x"Yes" ]; then
80		echo -n $"Shutting down $KIND services: "
81		killproc nmbd 
82		RETVAL2=$?
83		[ $RETVAL2 -eq 0 ] && rm -f /var/run/nmbd.pid
84		[ $RETVAL -eq 0 -a $RETVAL2 -eq 0 ] && rm -f /var/lock/subsys/smb 
85		echo ""
86	else
87		[ $RETVAL -eq 0 ] && rm -f /var/lock/subsys/smb 
88		echo ""
89	fi
90	return $RETVAL
91}	
92
93restart() {
94	stop
95	start
96}	
97
98reload() {
99        echo -n $"Reloading smb.conf file: "
100	killproc smbd -HUP
101	RETVAL=$?
102	echo
103	return $RETVAL
104}	
105
106rhstatus() {
107	status smbd
108	status nmbd
109}	
110
111case "$1" in
112  start)
113  	start
114	;;
115  stop)
116  	stop
117	;;
118  restart)
119  	restart
120	;;
121  reload)
122  	reload
123	;;
124  status)
125  	rhstatus
126	;;
127  condrestart)
128  	[ -f /var/lock/subsys/smb ] && restart || :
129	;;
130  *)
131	echo $"Usage: $0 {start|stop|restart|reload|status|condrestart}"
132	exit 1
133esac
134
135exit $?
136