Script de inicialização Samba4

page_samba4

 

Saudação a todos!

Esta dica é pra você, meu amigo, que configurou seu servidor Samba4 no Linux Debian e está quebrando a cabeça para poder fazer com que o Samba4 inicie automaticamente no boot.

Se você ainda não conseguiu fazer com sucesso a instalação e configuração do Samba4, veja este nosso artigo “Configurando Samba 4 como Controlador de Domínio e Servidor de Arquivos”.

Muito bem, vamos avante. Primeiro vamos criar o arquivo:

vim /etc/init.d/samba4.sh

Insira no arquivo samba4.sh o seguinte conteúdo:

#! /bin/sh
### BEGIN INIT INFO
# Provides: samba
# Required-Start: $network $local_fs $remote_fs
# Required-Stop: $network $local_fs $remote_fs
# Default-Start: 2 3 4 5
# Default-Stop: 0 1 6
# Short-Description: start Samba daemons
### END INIT INFO
#
# Start/stops the Samba daemon (samba).
# Adapted from the Samba 3 packages.
#
SAMBAPID=/var/run/samba/samba.pid
# clear conflicting settings from the environment
unset TMPDIR
# See if the daemon and the config file are there
test -x /usr/local/samba/sbin -a -r /usr/local/samba/etc/ || exit 0
. /lib/lsb/init-functions
case “$1” in
start)
log_daemon_msg “Starting Samba 4 daemon” “samba”
if ! start-stop-daemon –start –quiet –oknodo –exec /usr/local/samba/sbin/samba — -D;
then
log_end_msg 1
exit 1
fi
log_end_msg 0
;;
stop)
log_daemon_msg “Stopping Samba 4 daemon” “samba”
start-stop-daemon –stop –quiet –name samba $SAMBAPID
# Wait a little and remove stale PID file
sleep 1
if [ -f $SAMBAPID ] && ! ps h `cat $SAMBAPID` > /dev/null
then
# Stale PID file (samba was succesfully stopped),
# remove it (should be removed by samba itself IMHO.)
rm -f $SAMBAPID
fi
log_end_msg 0
;;
restart|force-reload)
$0 stop
sleep 1
$0 start
;;
*)
echo “Usage: /etc/init.d/samba {start|stop|restart|force-reload}”
exit 1
;;
esac
exit 0

Salve e saia do arquivo. Depois dê permissão de execução ao arquivo:

chmod 755 /etc/init.d/samba4.sh

E por fim, vamos configurar para iniciar no boot do sistema:

update-rc.d samba4 defaults

Agora é só testar reiniciando o sistema e verificando se os serviços do Samba4 estão rodando.

É isso aí galera, espero que seja útil.

Caso você queira se aprofundar e aprender mais sobre Samba4 veja nosso treinamento Samba4 Professional.

Clique aqui e veja a grade completa do curso e maiores informações.

 

Um abraço! Fiquem na paz!

Claudio Maciel

www.esperanca.com.br

Facebooktwittergoogle_plusredditpinterestlinkedinmail
Esta entrada foi publicada em Debian, Linux, Samba4 e marcada com a tag , , . Adicione o link permanente aos seus favoritos.

5 respostas a Script de inicialização Samba4

  1. Floppymaster disse:

    Eu estou começando a testar o Ubuntu Server (no versão 16.04) e só funcionou comigo no inicio automatico no boot com a criação de um script em:

    #nano /etc/init.d/samba4.sh

    com o conteudo:

    #!/bin/sh
    /usr/local/samba/sbin/samba

    depois executa:

    #chmod 755 /etc/init.d/samba4.sh

    e na sequencia:

    #update-rc.d samba4.sh defaults

    Pre finalizar o velho e bom
    #init 6
    e quando sobe já está ativo e rodando.

    Espero ter ajudado, e lembrando, foi assim que eu consegui (por favor não critiquem).

  2. Valdir disse:

    Desculpa só errei o tópico kkkk era para “Configurando o Samba4 ….”

    Abraço

  3. Valdir disse:

    Olá pessoal já se passou 1 ano do ultimo post, mesmo assim fiz um teste usando o Ubuntu 14.04 LTS Desktop, pois já tinha esta distro instalada em uma maquina aqui em casa a qual usava esporadicamente.
    Segui o Tutorial e não tive nenhum problema, alias só o script de inicialização que tive que usar um próprio para o Ubuntu.

    Segue.

    #!/bin/sh

    ### BEGIN INIT INFO
    # Provides: samba
    # Required-Start: $network $local_fs $remote_fs
    # Required-Stop: $network $local_fs $remote_fs
    # Default-Start: 2 3 4 5
    # Default-Stop: 0 1 6
    # Should-Start: slapd
    # Should-Stop: slapd
    # Short-Description: start Samba daemons (nmbd and smbd)
    ### END INIT INFO

    # Description of this script:
    #
    # This script comes initially from a Debian Squeeze machine on
    # which samba 3.x was installed with “apt-get install samba”. The script
    # was modified/adjusted so it points to the correct paths of a default
    # samba4 installation (/usr/local/samba).
    #
    # Installation instructions:
    # (1) copy the content of this script into your clipboard or download it
    # (2) save the content into /etc/init.d/samba of your samba4 host.
    # (3) execute “chmod +x /etc/init.d/samba” to have the script executable
    # (4) execute “update-rc.d samba defaults” to install auto-start function.
    # smbd+nmbd will automatically being started after earch system start/reboot
    #
    # Modified by local@#samba~irc.freenode.net at 06th March 2013
    # The script was successfully tested on Debian GNU/Linux Squeeze+Wheezy

    # Defaults
    RUN_MODE=”daemons”

    # Reads config file (will override defaults above)
    [ -r /etc/default/samba ] && . /etc/default/samba

    PIDDIR=/usr/local/samba/var/run
    NMBDPID=$PIDDIR/nmbd.pid
    SMBDPID=$PIDDIR/smbd.pid

    # clear conflicting settings from the environment
    unset TMPDIR

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

    . /lib/lsb/init-functions

    case “$1” in
    start)
    log_daemon_msg “Starting Samba daemons”
    # Make sure we have our PIDDIR, even if it’s on a tmpfs
    install -o root -g root -m 755 -d $PIDDIR

    NMBD_DISABLED=`testparm -s –parameter-name=’disable netbios’ 2>/dev/null`
    if [ “$NMBD_DISABLED” != ‘Yes’ ]; then
    log_progress_msg “nmbd”
    if ! start-stop-daemon –start –quiet –oknodo –exec /usr/local/samba/sbin/nmbd — -D
    then
    log_end_msg 1
    exit 1
    fi
    fi

    if [ “$RUN_MODE” != “inetd” ]; then
    log_progress_msg “smbd”
    if ! start-stop-daemon –start –quiet –oknodo –exec /usr/local/samba/sbin/smbd — -D; then
    log_end_msg 1
    exit 1
    fi
    fi

    log_end_msg 0
    ;;
    stop)
    log_daemon_msg “Stopping Samba daemons”
    log_progress_msg “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

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

    log_end_msg 0

    ;;

    reload)
    log_daemon_msg “Reloading /usr/local/samba/etc/smb.conf” “smbd only”

    start-stop-daemon –stop –signal HUP –pidfile $SMBDPID

    log_end_msg 0
    ;;
    restart|force-reload)
    $0 stop
    sleep 1
    $0 start
    ;;
    status)
    status=”0″
    NMBD_DISABLED=`testparm -s –parameter-name=’disable netbios’ 2>/dev/null`
    if [ “$NMBD_DISABLED” != “Yes” ]; then
    status_of_proc -p $NMBDPID /usr/local/samba/sbin/nmbd nmbd || status=$?
    fi
    if [ “$RUN_MODE” != “inetd” ]; then
    status_of_proc -p $SMBDPID /usr/local/samba/sbin/smbd smbd || status=$?
    fi
    if [ “$NMBD_DISABLED” = “Yes” -a “$RUN_MODE” = “inetd” ]; then
    status=”4″
    fi
    exit $status
    ;;
    *)
    echo “Usage: /etc/init.d/samba {start|stop|reload|restart|force-reload|status}”
    exit 1
    ;;
    esac

    exit 0

    Abraço

  4. edgar disse:

    Na linha update-rc.d samba4 defaults, há um erro.
    Deveria ser

    update-rc.d samba4.sh defaults

    grato

  5. Elizeu Freitas disse:

    Tentei de todas as formas e não consegui iniciar o Samba4 durante o Boot.
    A todos aqueles que também não conseguiram resolver o problema de inicialização, segue abaixo o link com a solução (Comigo funcionou perfeitamente)

    http://ubuntuforums.org/showthread.php?t=2132259

    Creditos: Toxic64
    http://ubuntuforums.org/member.php?u=1807148

Deixe uma resposta

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *