Se o comportamento do Monit não corresponder ao que está escrito no arquivo de configuração, uma possível causa pode ser que o Monit realmente use um arquivo de configuração diferente.
O script /etc/rc.d/init.d/monit no pacote monit-5.5-1.el6.rf inicia monit sem especificar o nome do arquivo de configuração; portanto, o Monit tenta localizar o arquivo de configuração em vários locais e usa o primeiro encontrado. Outra coisa importante é que o nome do arquivo de configuração padrão neste pacote é diferente daquele usado pela versão upstream não modificada do Monit - upstream usa monitrc , mas o pacote do RepoForge usa monit.conf .
A ordem de pesquisa usada para o arquivo de configuração é a seguinte:
-
~/.monitrcna versão a montante da Monit, ou~/.monit.confno pacote Repoforge (o diretório home do usuário que inicioumonité usado, se Monit é iniciado a partir do script de inicialização, o usuário éroot). O diretório pessoal é lido usandogetpwuid(geteuid())(ou seja, de/etc/passwdou qualquer outro banco de dados NSS), não da variável de ambienteHOME. -
/etc/monitrcna versão upstream do Monit, ou/etc/monit.confno pacote do RepoForge. Se o pacote RepoForge for usado,/etc/monit.confinicialmente contém uma linhaincludenão comentada, o que faz com que o Monit leia arquivos de configuração adicionais a partir do diretório/etc/monit.d:include /etc/monit.d/*Nas fontes upstream, o exemplo
monitrctem essa linha comentada, portanto, nenhum arquivo de configuração adicional é usado por padrão.Note também que o pacote RepoForge tem um script postinstall:
# Moving old style configuration file to conf standard location if [ -f /etc/monitrc ]; then mv -f /etc/monitrc /etc/monit.conf fiPortanto, se o arquivo
/etc/monitrcexistir antes da instalação do pacote ou atualizar , esse arquivo será renomeado para/etc/monit.conf, sobrescrevendo-o silenciosamente. -
$SYSCONFDIR/monitrcna versão a montante da Monit, onde$SYSCONFDIRé o valor da opção--sysconfdir=...passados para o scriptconfigureao compilar a fonte (o valor padrão desta opção é$prefix/etc, como de costume com scriptsconfiguregerados pelo Autoconf, e o prefixo padrão é/usr/local, portanto, o nome do arquivo de configuração se torna/usr/local/etc/monitrc). No pacote RepoForge, esse nome de arquivo se torna/etc/monit.conf, tornando-o redundante. -
/usr/local/etc/monitrcna versão upstream do Monit ou/usr/local/etc/monit.confno pacote do RepoForge. Aqui, o diretório/usr/local/etcé codificado e não depende de nenhuma opçãoconfigure. -
./monitrcna versão a montante da Monit, ou./monit.confno pacote Repoforge (quando se inicia a partir do script de inicialização, o diretório atual é provável que seja/).