Sto cercando di installare Monit per il mio server Debian. Ho un file monitrc principale in /etc/monit
cui alla fine ha include /etc/monit/conf.d/*
.
In conf.d ho due file per i miei server apache e mysql:
# ls -al /etc/monit/conf.d
total 16
drwxr-xr-x 2 root root 4096 Apr 15 16:03 .
drwxr-xr-x 3 root root 4096 Apr 15 16:02 ..
-rwx------ 1 root root 272 Apr 15 15:38 apache2.conf
-rwx------ 1 root root 264 Apr 15 15:47 mysql.conf
Quando corro monit -t
(per testare la sintassi della configurazione) ottengo:
/etc/monit/conf.d/apache2.conf:1: Error: syntax error 'check process '
Lo stesso errore si verifica per il file di configurazione mysql se cancello / sposto il file apache2.conf.
# cat apache2.conf
check process apache2 with pidfile /var/run/apache2.pid
start program = "/usr/sbin/service apache2 start"
stop program = "/usr/sbin/service apache2 stop"
if failed
host localhost
port 80
protocol http
request "/catalog/"
then restart and alert
E il contenuto di mysql.conf
# cat mysql.conf
check process mysqld with pidfile /var/run/mysqld/mysqld.pid
group database
start program = "/usr/sbin/service mysqld start"
stop program = "/usr/sbin/service mysqld stop"
if failed host localhost port 3306 protocol mysql then restart and alert
Io ho:
- ho provato molte varianti del file conf
- ha esaminato la documentazione 20 volte
- sostituzione in un file mysqld.conf da un repository pubblico di file di configurazione di Monit comuni e rimozione del file di configurazione di apache2
- guardato i file in esadecimale, non ci sono personaggi divertenti.
- provato sia le schede che gli spazi.
- rimuovendo tutto tranne la prima riga.
- ricontrollato che
/var/run/mysqld/mysqld.pid
effettivamente esiste. - assicurarsi che le autorizzazioni su entrambi
monitrc
e su entrambi i file conf.d siano 0700.
A questo punto sono completamente perplesso su ciò che potrebbe causare il messaggio di errore (non molto utile), /etc/monit/conf.d/apache2.conf:1: Error: syntax error 'check process '
monitrc
. Hai eseguitomonit -c insert_your_monitrc_path_here
prima di eseguiremonit -t
?