Como eu automaticamente inicio o supervisor na inicialização no FreeBSD?

5

Existe um script de inicialização pré-existente para supervisord no FreeBSD? Se não, existe um bom guia para escrever rc.d scripts para o FreeBSD? Eu sou muito novo na plataforma.

Obrigado.

UPDATE :

Agora tenho o seguinte em /usr/local/etc/rc.d/supervisord , mas parece que não está funcionando. Eu não estou vendo nada na rolagem de inicialização relacionada ao supervisord.

#!/bin/sh

# PROVIDE: supervisord
# REQUIRE: LOGIN
# KEYWORD: shutdown

. /etc/rc.subr

name="supervisord"
rcvar='set_rcvar'
load_rc_config "$name"

command="/usr/local/bin/${name}"
command_args="-c /usr/local/etc/supervisord.conf"

supervisord_enable=${supervisord_enable-"NO"}
supervisord_pidfile=${supervisord_pidfile-"/var/run/supervisord.pid"}

pidfile="${supervisord_pidfile}"

run_rc_command "$1"
    
por Hank Gay 20.04.2010 / 21:04

2 respostas

5

Se você instalou o supervisord a partir de portas ( sysutils/py-supervisor ), você deve ter um script rc em funcionamento em /usr/local/etc/rc.d/supervisord

Verifique o script em busca de informações / outros parâmetros de configuração, mas basta adicionar supervisord_enable="YES" a /etc/rc.conf para que ele seja iniciado automaticamente na inicialização.

    
por 20.04.2010 / 22:08
6

Se você instalou o supervisord a partir da porta sysutils/py-supervisor , então este arquivo rc já está presente ... (do que para voretaq7 para apontar isto).

A estrutura básica de um arquivo rc é:

#!/bin/sh

. /etc/rc.subr

name="supervisord"
rcvar='set_rcvar'
load_rc_config "$name"

command="/usr/local/bin/${name}"
command_args=""

run_rc_command "$1"

Criando o arquivo /usr/local/etc/rc.d/supervisord com o acima, então chmodding +x irá começar (provavelmente). Estou supondo que você tenha supervisord instalado em /usr/local/bin , altere esse caminho conforme necessário. Além disso, você pode adicionar quaisquer argumentos de linha de comando necessários (como um arquivo de configuração ou qualquer outro). Eu não estou familiarizado com o supervisord, então não tenho certeza do que ele precisa.

Certifique-se de que você tem uma linha em /etc/rc.conf semelhante a supervisord_enable="YES" ou o script fará exatamente nada.

    
por 20.04.2010 / 21:16