]> git.pld-linux.org Git - packages/samba.git/blame - smb.init
- rc-scripts with killproc & --pidfile support
[packages/samba.git] / smb.init
CommitLineData
c9815d06 1#!/bin/sh
ba584e6e 2#
c9815d06 3# chkconfig: 345 91 35
4# description: Starts and stops the Samba smbd and nmbd daemons \
5# used to provide SMB network services.
6#
7# config: /etc/samba/smb.conf
8# config: /etc/samba/lmhosts
407b2a8a
ER
9# processname: nmbd
10# processname: smbd
ba584e6e 11
ba584e6e 12# Source function library.
13. /etc/rc.d/init.d/functions
14
15# Source networking configuration.
16. /etc/sysconfig/network
17
b80ab7b1
ER
18# Set default config
19CFGFILE="/etc/samba/smb.conf"
fe133678
ER
20smbd_pidfile="/var/run/smbd.pid"
21nmbd_pidfile="/var/run/nmbd.pid"
b80ab7b1 22
ba584e6e 23# Demon specified configuration.
24. /etc/sysconfig/samba
25
26# Check that networking is up.
63e16999 27if is_yes "${NETWORKING}"; then
83f05db5 28 if [ ! -f /var/lock/subsys/network -a "$1" != stop -a "$1" != status ]; then
66b3f2a3 29 msg_network_down "Samba SMB/CIFS Server"
63e16999 30 exit 1
31 fi
32else
33 exit 0
ecefb8c7 34fi
564d701c
AF
35
36TMPDIR="/tmp"; export TMPDIR
146d4be0 37unset TMP || :
ba584e6e 38
15fc6630 39start() {
63e16999 40 # Check if the service is already running?
66b3f2a3
ER
41 if [ -f /var/lock/subsys/smb ]; then
42 msg_already_running "Samba SMB/CIFS Server"
43 return
44 fi
45
46 msg_starting "Samba SMB/CIFS Server"
47 daemon /usr/sbin/smbd -D -s $CFGFILE
48 RETVAL=$?
49 msg_starting "Samba NetBIOS Name Server"
50 daemon /usr/sbin/nmbd -D $CFGFILE
51 [ $RETVAL -eq 0 ] && RETVAL=$?
52 if [ $RETVAL -eq 0 ]; then
53 touch /var/lock/subsys/smb
63e16999 54 fi
15fc6630
ER
55}
56
57stop() {
63e16999 58 # Stop daemons.
66b3f2a3
ER
59 if [ ! -f /var/lock/subsys/smb ]; then
60 msg_not_running "Samba SMB/CIFS Server"
61 return
63e16999 62 fi
66b3f2a3
ER
63
64 msg_stopping "Samba SMB/CIFS Server"
fe133678
ER
65 killproc --pidfile $smbd_pidfile smbd
66
66b3f2a3 67 msg_stopping "Samba NetBIOS Name Server"
fe133678 68 killproc --pidfile $nmbd_pidfile nmbd
66b3f2a3
ER
69 rm -f /var/lock/subsys/smb >/dev/null 2>&1
70}
71
72reload() {
73 if [ ! -f /var/lock/subsys/smb ]; then
74 msg_not_running "Samba SMB/CIFS Server"
75 RETVAL=7
76 return
77 fi
78
79 msg_reloading "Samba SMB/CIFS Server"
fe133678 80 killproc --pidfile $smbd_pidfile smbd -HUP
66b3f2a3 81 RETVAL=$?
15fc6630
ER
82}
83
ff434ea4 84condrestart() {
66b3f2a3
ER
85 if [ ! -f /var/lock/subsys/smb ]; then
86 msg_not_running "Samba SMB/CIFS Server"
ff434ea4 87 RETVAL=$1
66b3f2a3 88 return
ff434ea4 89 fi
66b3f2a3
ER
90
91 stop
92 start
93}
94
95rc_status() {
96 status smbd
97 RETVAL=$?
98 status nmbd
99 RET=$?
100 [ $RETVAL -eq 0 ] && RETVAL=$RET
ff434ea4
JB
101}
102
15fc6630
ER
103RETVAL=0
104# See how we were called.
105case "$1" in
106 start)
ff434ea4 107 start
15fc6630
ER
108 ;;
109 stop)
ff434ea4 110 stop
ba584e6e 111 ;;
112 restart)
15fc6630
ER
113 stop
114 start
ba584e6e 115 ;;
ff434ea4
JB
116 try-restart)
117 condrestart 0
118 ;;
63e16999 119 reload|force-reload)
66b3f2a3 120 reload
5b5c4a11 121 ;;
ff434ea4 122 status)
66b3f2a3 123 rc_status
ff434ea4 124 ;;
ba584e6e 125 *)
ff434ea4 126 msg_usage "$0 {start|stop|restart|try-restart|reload|force-reload|status}"
efca5520 127 exit 3
ba584e6e 128esac
129
ecefb8c7 130exit $RETVAL
This page took 0.054779 seconds and 4 git commands to generate.