#!/bin/bash PROGRAM=/bin/false RUNLEVEL=3 NEEDS="+remote_fs" ARGS="-D" . /etc/init.d/smgl_init start() { . /etc/sysconfig/samba if [ ! -e /var/run/samba ]; then mkdir /var/run/samba fi && if ! netstat -nl --udp | grep -q ":137" ; then echo "Starting NetBIOS nameserver ..." loadproc /usr/sbin/nmbd ${ARGS} evaluate_retval fi && if ! netstat -nl --tcp | grep -q ":139\|:445" ; then echo "Starting NetBIOS sessions ..." loadproc /usr/sbin/smbd ${ARGS} evaluate_retval fi } # stop() { if netstat -nl --udp | grep -q ":137" ; then if ps -C nmbd | grep -q nmbd ; then echo "Stopping NetBIOS nameserver ..." killproc /usr/sbin/nmbd evaluate_retval fi fi && if netstat -nl --tcp | grep -q ":139\|:445" ; then if ps -C smbd | grep -q smbd; then echo "Stopping NetBIOS sessions ..." killproc /usr/sbin/smbd evaluate_retval fi fi } # status() { if netstat -nl --udp | grep -q ":137" ; then if ! ps -C nmbd | grep -q nmbd; then echo "NetBIOS nameserver : xinetd" evaluate_retval fi if ps -C nmbd | grep -q nmbd; then echo "NetBIOS nameserver : daemon" evaluate_retval fi fi && if netstat -nl --tcp | grep -q ":139\|:445" ; then if ! ps -C smbd | grep -q smbd ; then echo "NetBIOS sessions : xinetd" evaluate_retval fi if ps -C smbd | grep -q smbd ; then echo "NetBIOS sessions : daemon" evaluate_retval fi fi } restart() { stop && sleep 1 && start } .