Adivinhando o Wiki do Gentoo , editando NTPD_OPTS
em /etc/conf.d/ntpd
provavelmente faz o truque ( independentemente da pergunta se -g
é aconselhável, não tem ideia).
Eu estou querendo saber como eu posso executar um daemon, neste caso, NTP, com parâmetros personalizados.
Por exemplo, no meu PC Ubuntu, observo que tenho ntpd
executando desta forma:
$ ps aux | grep ntpd
ntp 5936 ... 0:00 /usr/sbin/ntpd -p /var/run/ntpd.pid -g -u 119:127
Você pode perceber esse parâmetro -g
.
Mas no meu PC Gentoo eu corro o mesmo comando e posso observar que o daemon ntp não está rodando com o parâmetro -g
e eu quero adicioná-lo!
Este é um problema específico de distribuição? Como posso lidar com isso?
Adivinhando o Wiki do Gentoo , editando NTPD_OPTS
em /etc/conf.d/ntpd
provavelmente faz o truque ( independentemente da pergunta se -g
é aconselhável, não tem ideia).
No Debian e no Ubuntu, muitas vezes o daemon tem alguns parâmetros de configuração definidos em /etc/default/daemon-name
, isto é, por exemplo /etc/default/ntp
:
NTPD_OPTS='-g'
Este arquivo é originado de /etc/init.d/ntp
, e o valor das variáveis correspondentes usadas oportunamente:
# near the beginning
if [ -r /etc/default/ntp ]; then
. /etc/default/ntp
fi
# later
start-stop-daemon --start --quiet --oknodo --pidfile $PIDFILE --startas $DAEMON \
-- -p $PIDFILE $NTPD_OPTS
Eu não sei se o Gentoo tem algo parecido.
Daemon é como qualquer outro programa escrito a partir do código-fonte e compilado em formato executável, pode ser feito para aceitar argumentos, processar os argumentos de modo a usá-los como argumento especificando opções ou argumentos em si. A diferença entre daemon e programa pode ser, em essência, que o modo daemon do programa está mudando as tarefas para o modo de segundo plano e, opcionalmente, dependendo do requisito do serviço, é escutar na interface de rede e aceitar pedidos por fio. Portanto, passar os argumentos da linha de comando no prompt do shell ou logo após especificar o caminho do executável do daemon no script é o mesmo. O método de configurações ou variáveis que são usadas no shell script para invocar o daemon com os argumentos necessários, entretanto, podem diferir em estilo ou convenção. É importante ler o manual, se for fornecido, para saber quais argumentos são aceitos pelo executável daemon ou para o programa e saber o que eles são usados antes de colocá-los em uso na execução do que apenas fornecer as opções.
Estou me movendo entre muitas distribuições e versões do Linux. A maneira genérica - que eu tomo nesses casos é:
Leia o init-script - ele frequentemente origina um ou mais arquivos de configuração. Se o script init não analisar nenhum arquivo de configuração, você poderá modificar o script init. A desvantagem é que uma atualização do pacote ao qual o init-script pertence sobrescreverá suas alterações.
Diferentes distribuições fazem isso de forma diferente. De um modo geral, pesquise em /etc
para o local em que esse daemon específico foi iniciado ( grep -r ntpd /etc
ou find /etc -type f -exec grep ntpd {} +
) e, em seguida, veja como o script que o inicia obtém seus parâmetros. Alternativamente, consulte a documentação da sua distribuição para princípios gerais.
Geralmente, existe um script de shell grande ou outro arquivo de configuração que inicia muitos serviços, ou há um script ou arquivo de configuração para cada serviço. Os parâmetros podem ser fornecidos nesse script ou obtidos de uma variável definida em algum outro arquivo de configuração. Locais comuns incluem /etc/init*
, /etc/rc*
e /etc/default/*
.
Tags configuration init daemon