HEX
Server: Apache/2.4.41 (Ubuntu)
System: Linux sci 5.4.0-216-generic #236-Ubuntu SMP Fri Apr 11 19:53:21 UTC 2025 x86_64
User: tpdc (1002)
PHP: 7.4.3-4ubuntu2.29
Disabled: pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_get_handler,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,pcntl_async_signals,pcntl_unshare,
Upload Files
File: //etc/rc4.d/S01nmbd
#!/bin/sh

### BEGIN INIT INFO
# Provides:          nmbd
# Required-Start:    $network $local_fs $remote_fs
# Required-Stop:     $network $local_fs $remote_fs
# X-Start-Before:    smbd
# Default-Start:     2 3 4 5
# Default-Stop:      0 1 6
# Short-Description: Samba NetBIOS nameserver (nmbd)
# Description: NetBIOS name server to provide NetBIOS over IP naming services
#              to clients
### END INIT INFO


PIDDIR=/run/samba
NMBDPID=$PIDDIR/nmbd.pid

# clear conflicting settings from the environment
unset TMPDIR

# See if the daemons are there
test -x /usr/sbin/nmbd || exit 0

. /lib/lsb/init-functions

case $1 in
	start)
		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

		if [ -n `which testparm` ]
		then
			NMBD_DISABLED=`testparm -s --parameter-name='disable netbios' 2>/dev/null`
		fi
		if [ "$NMBD_DISABLED" != Yes ]; then
			log_daemon_msg "Starting NetBIOS name server" nmbd
			# Make sure we have our PIDDIR, even if it's on a tmpfs
			install -o root -g root -m 755 -d $PIDDIR

			if ! start-stop-daemon --start --quiet --oknodo --exec /usr/sbin/nmbd --pidfile $NMBDPID -- -D
			then
				log_end_msg 1
				exit 1
			fi
			log_end_msg 0
		fi

		;;
	stop)

		log_daemon_msg "Stopping NetBIOS name server" nmbd

		start-stop-daemon --stop --quiet --pidfile $NMBDPID
		# Wait a little and remove stale PID file
		sleep 1
		if [ -f $NMBDPID ] && ! ps h `cat $NMBDPID` > /dev/null
		then
			# Stale PID file (nmbd was succesfully stopped),
			# remove it (should be removed by nmbd itself IMHO.)
			rm -f $NMBDPID
		fi

		log_end_msg 0

		;;
	restart|force-reload)
		$0 stop
		sleep 1
		$0 start
		;;
        status)
		status_of_proc -p $NMBDPID /usr/sbin/nmbd nmbd
		exit $?
		;;
	*)
		echo "Usage: /etc/init.d/nmbd {start|stop|restart|force-reload|status}"
		exit 1
		;;
esac

exit 0