X-Git-Url: http://git.pld-linux.org/?a=blobdiff_plain;f=smb.init;h=541d58192a2d026d00ce7fe7878df39ea86f56a9;hb=c6a4fcd179f4298b781d92e4c3af8d5f32b51a75;hp=f15289909cd1e57954e139d37a53d73126884cb3;hpb=fe13367890e9acb660c091322267172fcdc2eade;p=packages%2Fsamba.git diff --git a/smb.init b/smb.init index f152899..541d581 100644 --- a/smb.init +++ b/smb.init @@ -19,6 +19,7 @@ CFGFILE="/etc/samba/smb.conf" smbd_pidfile="/var/run/smbd.pid" nmbd_pidfile="/var/run/nmbd.pid" +lockname=smb # Demon specified configuration. . /etc/sysconfig/samba @@ -36,9 +37,14 @@ fi TMPDIR="/tmp"; export TMPDIR unset TMP || : +SERVER_ROLE=`samba-tool testparm --parameter-name="server role" 2>/dev/null | tail -1` +if [ "$SERVER_ROLE" = "active directory domain controller" ]; then + exit 0 +fi + start() { # Check if the service is already running? - if [ -f /var/lock/subsys/smb ]; then + if [ -f /var/lock/subsys/$lockname ]; then msg_already_running "Samba SMB/CIFS Server" return fi @@ -46,17 +52,20 @@ start() { msg_starting "Samba SMB/CIFS Server" daemon /usr/sbin/smbd -D -s $CFGFILE RETVAL=$? - msg_starting "Samba NetBIOS Name Server" - daemon /usr/sbin/nmbd -D $CFGFILE - [ $RETVAL -eq 0 ] && RETVAL=$? + NMBD_DISABLED=`testparm -s --parameter-name='disable netbios' 2>/dev/null` + if [ "$NMBD_DISABLED" != Yes ]; then + msg_starting "Samba NetBIOS Name Server" + daemon /usr/sbin/nmbd -D $CFGFILE + [ $RETVAL -eq 0 ] && RETVAL=$? + fi if [ $RETVAL -eq 0 ]; then - touch /var/lock/subsys/smb + touch /var/lock/subsys/$lockname fi } stop() { # Stop daemons. - if [ ! -f /var/lock/subsys/smb ]; then + if [ ! -f /var/lock/subsys/$lockname ]; then msg_not_running "Samba SMB/CIFS Server" return fi @@ -66,11 +75,11 @@ stop() { msg_stopping "Samba NetBIOS Name Server" killproc --pidfile $nmbd_pidfile nmbd - rm -f /var/lock/subsys/smb >/dev/null 2>&1 + rm -f /var/lock/subsys/$lockname >/dev/null 2>&1 } reload() { - if [ ! -f /var/lock/subsys/smb ]; then + if [ ! -f /var/lock/subsys/$lockname ]; then msg_not_running "Samba SMB/CIFS Server" RETVAL=7 return @@ -82,7 +91,7 @@ reload() { } condrestart() { - if [ ! -f /var/lock/subsys/smb ]; then + if [ ! -f /var/lock/subsys/$lockname ]; then msg_not_running "Samba SMB/CIFS Server" RETVAL=$1 return