Pastebin launched a little side project called VERYVIRAL.com, check it out ;-) Want more features on Pastebin? Sign Up, it's FREE!
Guest

Untitled

By: a guest on May 5th, 2012  |  syntax: Bash  |  size: 4.45 KB  |  views: 16  |  expires: Never
download  |  raw  |  embed  |  report abuse  |  print
Text below is selected. Please press Ctrl+C to copy to your clipboard. (⌘+C on Mac)
  1. avr ~ # cat /etc/init.d/samba-server
  2. #!/bin/sh
  3.  
  4. ### BEGIN INIT INFO
  5. # Provides:          samba-server
  6. # Required-Start:    $network $local_fs $remote_fs
  7. # Required-Stop:     $network $local_fs $remote_fs
  8. # Default-Start:     2 3 4 5
  9. # Default-Stop:      0 1 6
  10. # Should-Start:      slapd
  11. # Should-Stop:       slapd
  12. # Short-Description: start Samba SERVER daemons (nmbd and smbd)
  13. ### END INIT INFO
  14.  
  15.  
  16. # Defaults
  17. RUN_MODE="daemons"
  18.  
  19. # Reads config file (will override defaults above)
  20. #[ -r /etc/default/samba-server] && . /etc/default/samba-server
  21.  
  22. PIDDIR=/var/run/samba-server
  23. NMBDPID=$PIDDIR/nmbd-smb-server.conf.pid
  24. SMBDPID=$PIDDIR/smbd-smb-server.conf.pid
  25. CONF=/etc/samba/smb-server.conf
  26.  
  27. # clear conflicting settings from the environment
  28. unset TMPDIR
  29.  
  30. # See if the daemons are there
  31. test -x /usr/sbin/nmbd -a -x /usr/sbin/smbd || exit 0
  32.  
  33. . /lib/lsb/init-functions
  34.  
  35. case "$1" in
  36.         start)
  37.                 log_daemon_msg "Starting Samba daemons in WKGP UIK and host SERVER"
  38.                 # Make sure we have our PIDDIR, even if it's on a tmpfs
  39.                 install -o root -g root -m 755 -d $PIDDIR
  40.  
  41.                 NMBD_DISABLED=`testparm -s --parameter-name='disable netbios' $CONF 2>/dev/null`
  42.                 if [ "$NMBD_DISABLED" != 'Yes' ]; then
  43.                         log_progress_msg "nmbd"
  44.                         if ! start-stop-daemon --start --quiet --oknodo --exec /usr/sbin/nmbd -- -D $NMBDOPTIONS -s $CONF
  45.                         then
  46.                                 log_end_msg 1
  47.                                 exit 1
  48.                         fi
  49.                 fi
  50.  
  51.                 if [ "$RUN_MODE" != "inetd" ]; then
  52.                         log_progress_msg "smbd"
  53.                         if ! start-stop-daemon --start --quiet --oknodo --exec /usr/sbin/smbd -- -D $SMBDOPTIONS -s $CONF
  54.                         then
  55.                                 log_end_msg 1
  56.                                 exit 1
  57.                         fi
  58.                 fi
  59.  
  60.                 log_end_msg 0
  61.                 ;;
  62.         stop)
  63.                 log_daemon_msg "Stopping Samba daemons SERVER"
  64.                 log_progress_msg "nmbd"
  65.  
  66.                 start-stop-daemon --stop --quiet --pidfile $NMBDPID
  67.                 # Wait a little and remove stale PID file
  68.                 sleep 1
  69.                 if [ -f $NMBDPID ] && ! ps h `cat $NMBDPID` > /dev/null
  70.                 then
  71.                         # Stale PID file (nmbd was succesfully stopped),
  72.                         # remove it (should be removed by nmbd itself IMHO.)
  73.                         rm -f $NMBDPID
  74.                 fi
  75.  
  76.                 if [ "$RUN_MODE" != "inetd" ]; then
  77.                         log_progress_msg "smbd"
  78.                         start-stop-daemon --stop --quiet --pidfile $SMBDPID
  79.                         # Wait a little and remove stale PID file
  80.                         sleep 1
  81.                         if [ -f $SMBDPID ] && ! ps h `cat $SMBDPID` > /dev/null
  82.                         then
  83.                                 # Stale PID file (nmbd was succesfully stopped),
  84.                                 # remove it (should be removed by smbd itself IMHO.)
  85.                                 rm -f $SMBDPID
  86.                         fi
  87.                 fi
  88.  
  89.                 log_end_msg 0
  90.  
  91.                 ;;
  92.         reload)
  93.                 log_daemon_msg "Reloading /etc/samba/smb.conf" "smbd only on SERVER"
  94.  
  95.                 start-stop-daemon --stop --signal HUP --pidfile $SMBDPID
  96.  
  97.                 log_end_msg 0
  98.                 ;;
  99.         restart|force-reload)
  100.                 $0 stop
  101.                 sleep 1
  102.                 $0 start
  103.                 ;;
  104.         status)
  105.                 status="0"
  106.                 NMBD_DISABLED=`testparm -s --parameter-name='disable netbios' $CONF 2>/dev/null`
  107.                 if [ "$NMBD_DISABLED" != "Yes" ]; then
  108.                         status_of_proc -p $NMBDPID /usr/sbin/nmbd nmbd || status=$?
  109.                 fi
  110.                 if [ "$RUN_MODE" != "inetd" ]; then
  111.                         status_of_proc -p $SMBDPID /usr/sbin/smbd smbd || status=$?
  112.                 fi
  113.                 if [ "$NMBD_DISABLED" = "Yes" -a "$RUN_MODE" = "inetd" ]; then
  114.                         status="4"
  115.                 fi
  116.                 exit $status
  117.                 ;;
  118.         *)
  119.                 echo "Usage: /etc/init.d/samba {start|stop|reload|restart|force-reload|status}"
  120.                 exit 1
  121.                 ;;
  122. esac
  123.  
  124. exit 0