11.2. Inicialização de Serviços
Anterior | Capítulo 11. Configuração e Ajuste | Próxima

## 11.2. Inicialização de Serviços

Contribuído por Tom Rhodes.

Muitos usuários instalam software de terceiros no FreeBSD a partir da coleção de Ports e precisam que os serviços instalados sejam iniciados durante a inicialização do sistema. Serviços como mail/postfix ou www/apache22 são apenas dois dos muitos pacotes de software que podem ser iniciados durante a inicialização do sistema. Esta seção explica os procedimentos disponíveis para iniciar o software de terceiros.

No FreeBSD, a maioria dos serviços incluídos, como o cron(8), são iniciados através dos scripts de inicialização do sistema.

### 11.2.1. Configuração Estendida dos Aplicativos

Agora que o FreeBSD inclui o `rc.d`, a configuração da inicialização do aplicativo é mais fácil e fornece mais recursos. Usando as palavras-chave discutidas em Seção 11.4, “Gerenciando Serviços no FreeBSD”, os aplicativos podem ser configurados para iniciar depois de certos outros serviços e flags extras poderem ser passadas através do `/etc/rc.conf` no lugar de sinalizadores codificados no script de inicialização. Um script básico pode ser semelhante ao seguinte:

    #!/bin/sh
    #
    # PROVIDE: utility
    # REQUIRE: DAEMON
    # KEYWORD: shutdown

    . /etc/rc.subr

    name=utility
    rcvar=utility_enable

    command="/usr/local/sbin/utility"

    load_rc_config $name

    #
    # DO NOT CHANGE THESE DEFAULT VALUES HERE
    # SET THEM IN THE /etc/rc.conf FILE
    #
    utility_enable=${utility_enable-"NO"}
    pidfile=${utility_pidfile-"/var/run/utility.pid"}

    run_rc_command "$1"

Este script irá garantir que o `utilitário` fornecido será iniciado após o pseudo-serviço `DAEMON`. Ele também fornece um método para definir e rastrear o ID do processo (PID).

Esta aplicação poderia então ter a seguinte linha colocada no `/etc/rc.conf`:

    utility_enable="YES"

Este método permite a manipulação mais fácil de argumentos de linha de comando, inclusão das funções padrões fornecidas em `/etc/rc.subr`, compatibilidade com o rcorder(8), e fornece uma configuração mais fácil via `rc.conf`.

### 11.2.2. Usando o Services para Inicializar Serviços

Outros serviços podem ser iniciados usando o inetd(8). O uso do inetd(8) e sua configuração é descrita em profundidade em Seção 29.2, “O super-servidor inetd”.

Em alguns casos, pode fazer mais sentido usar o cron(8) para iniciar os serviços do sistema. Esta abordagem tem várias vantagens, pois o cron(8) executa estes processos como o proprietário do crontab(5). Isto permite que usuários regulares iniciem e mantenham seus próprios aplicativos.

O recurso `@reboot` do cron(8), pode ser usado no lugar da especificação de hora. Isso faz com que o job seja executado quando cron(8) é iniciado, normalmente durante a inicialização do sistema.

Anterior | Acima | Próxima
Capítulo 11. Configuração e Ajuste | Principal | 11.3. Configurando o cron(8)

All FreeBSD documents are available for download at https://download.freebsd.org/ftp/doc/

Questions that are not answered by the documentation may be sent to <freebsd-questions@FreeBSD.org>.
Send questions about this document to <freebsd-doc@FreeBSD.org>.