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