Initial import
[samba] / packaging / RHEL / setup / smb.init
diff --git a/packaging/RHEL/setup/smb.init b/packaging/RHEL/setup/smb.init
new file mode 100644 (file)
index 0000000..30d7d40
--- /dev/null
@@ -0,0 +1,135 @@
+#!/bin/sh
+#
+# chkconfig: - 91 35
+# description: Starts and stops the Samba smbd and nmbd daemons \
+#             used to provide SMB network services.
+#
+# pidfile: /var/run/samba/smbd.pid
+# pidfile: /var/run/samba/nmbd.pid
+# config:  /etc/samba/smb.conf
+
+
+# Source function library.
+if [ -f /etc/init.d/functions ] ; then
+  . /etc/init.d/functions
+elif [ -f /etc/rc.d/init.d/functions ] ; then
+  . /etc/rc.d/init.d/functions
+else
+  exit 0
+fi
+
+# Avoid using root's TMPDIR
+unset TMPDIR
+
+# Source networking configuration.
+. /etc/sysconfig/network
+
+if [ -f /etc/sysconfig/samba ]; then
+   . /etc/sysconfig/samba
+fi
+
+# Check that networking is up.
+[ ${NETWORKING} = "no" ] && exit 0
+
+# Check that smb.conf exists.
+[ -f /etc/samba/smb.conf ] || exit 0
+
+# Check that we can write to it... so non-root users stop here
+[ -w /etc/samba/smb.conf ] || exit 0
+
+# Check whether "netbios disabled" is true
+ISNETBIOSDISABLED=$(testparm -s 2>/dev/null | \
+       sed -n '/\[global\]/,/^$/p' | \
+       grep "disable netbios = Yes" | \
+       awk 'BEGIN{FS=" = "}{print $2}')
+
+
+RETVAL=0
+
+
+start() {
+       KIND="SMB"
+       echo -n $"Starting $KIND services: "
+       daemon smbd $SMBDOPTIONS
+       RETVAL=$?
+       echo
+       KIND="NMB"
+       if [ x"$ISNETBIOSDISABLED" != x"Yes" ]; then
+               echo -n $"Starting $KIND services: "
+               daemon nmbd $NMBDOPTIONS
+               RETVAL2=$?
+               echo
+               [ $RETVAL -eq 0 -a $RETVAL2 -eq 0 ] && touch /var/lock/subsys/smb || \
+                       RETVAL=1
+       else
+               [ $RETVAL -eq 0 ] && touch /var/lock/subsys/smb || \
+                       RETVAL=1
+       fi
+       return $RETVAL
+}      
+
+stop() {
+       KIND="SMB"
+       echo -n $"Shutting down $KIND services: "
+       killproc smbd -TERM
+       RETVAL=$?
+       [ $RETVAL -eq 0 ] && rm -f /var/run/smbd.pid
+       echo
+       KIND="NMB"
+       if [ x"$ISNETBIOSDISABLED" != x"Yes" ]; then
+               echo -n $"Shutting down $KIND services: "
+               killproc nmbd -TERM
+               RETVAL2=$?
+               [ $RETVAL2 -eq 0 ] && rm -f /var/run/nmbd.pid
+               [ $RETVAL -eq 0 -a $RETVAL2 -eq 0 ] && rm -f /var/lock/subsys/smb 
+               echo ""
+       else
+               [ $RETVAL -eq 0 ] && rm -f /var/lock/subsys/smb 
+               echo ""
+       fi
+       return $RETVAL
+}      
+
+restart() {
+       stop
+       start
+}      
+
+reload() {
+        echo -n $"Reloading smb.conf file: "
+       killproc smbd -HUP
+       RETVAL=$?
+       echo
+       return $RETVAL
+}      
+
+rhstatus() {
+       status smbd
+       status nmbd
+}      
+
+case "$1" in
+  start)
+       start
+       ;;
+  stop)
+       stop
+       ;;
+  restart)
+       restart
+       ;;
+  reload)
+       reload
+       ;;
+  status)
+       rhstatus
+       ;;
+  condrestart)
+       [ -f /var/lock/subsys/smb ] && restart || :
+       ;;
+  *)
+       echo $"Usage: $0 {start|stop|restart|reload|status|condrestart}"
+       exit 1
+esac
+
+exit $?