View Full Version : [FreeBSD] Ordine di avvio dei servizi al boot
/\/\@®¢Ø
26-07-2005, 14:19
Ho una macchina su cui sono installati mysql-server e mydns.
Visto che mydns prende i dati da mysql, ho bisogno che quest'ultimo parta prima del dns.
Per qualche motivo pero' succede il contrario, nonostante nei rispettivi file in rc.d/ siano contenute le righe opportune, ovvero
# PROVIDE: mysql
# REQUIRE: NETWORKING SERVERS
# BEFORE: DAEMON
# KEYWORD: shutdown
in mysql-server.sh
e
# PROVIDE: mydns
# REQUIRE: NETWORKING SERVERS mysql
# BEFORE: DAEMON
# KEYWORD: shutdown
in mydns.sh
Dove sbaglio ? :confused:
La versione di FreeBSD e' la 5.4
/\/\@®¢Ø
26-07-2005, 14:22
piccolo addendum:
cambiando il nome da mysql-server.sh in 000.mysql-server.sh, il servizio viene si' avviato prima di mydns, ma ad un intervallo cosi' ravvicinato che il database non e' ancora pronto.
drwho2107
27-07-2005, 03:02
Ciao.
Non capisco (ma probabilmente fraintendo) come mai gli script che menzioni sono sotto /etc/rc.d/ quando invece dovrebbero essere sotto /usr/local/etc/rc.d/ in quanto non parte del sistema.
In ogni caso, tutti gli script sotto /usr/local/etc/rc.d si avviano secondo un ordine numerico/alfabetico.
Prima partono quelli con nome che inizia per numero, esempio "000.pkgtools.sh', "010.xxxx.sh".... e poi quelli con le lettere ma in ordine alfabetico, esempio "cups.sh", "samba.sh" etc...
Gli script sotto /etc/rc.d sono avviati invece da /etc/rc.conf (chiamata a script esterno con valore), esempio "sshd_enable=YES"
Per cui se vuoi che 'mysql' parta prima di 'mydns' e che ci sia un lasco di tempo tra i 2, il mio consiglio e' quello di rinominare lo script di 'mysql' in qualcosa come '000.mysql...sh" e poi inserire una stringa all'inizio dello script 'mydns...sh' con un 'wait 20' (o altro comando che faccia pausa di X secondi), dove X secondi e' il tempo utile e necessario a '000.mysql...sh' di completare l'operazione di avvio.
Sulla base di come e' scritto lo scipt (perl/bash/....) devi inserire il comando di attesa opportuno.
Ciao
D.
drwho2107
27-07-2005, 03:04
Ciao.
Non capisco (ma probabilmente fraintendo) come mai gli script che menzioni sono sotto /etc/rc.d/ quando invece dovrebbero essere sotto /usr/local/etc/rc.d/ in quanto non parte del sistema.
Precisazione: Non ho mai installato MySQL sotto *BSD anche se uso *BSD al 99%. Diciamo che ho installato MySQL sono una volta in vita mia (sotto Linux)...
Non essendo 'MySQL' parte del sistema, i relativi script NON dovrebbero essere MAI installati sotto /etc/rc.d!!!
/\/\@®¢Ø
27-07-2005, 12:39
Ciao.
Non capisco (ma probabilmente fraintendo) come mai gli script che menzioni sono sotto /etc/rc.d/ quando invece dovrebbero essere sotto /usr/local/etc/rc.d/ in quanto non parte del sistema.
Mi sono spiegato male, si trovano infatti in /usr/local/etc/rd.d
In ogni caso, tutti gli script sotto /usr/local/etc/rc.d si avviano secondo un ordine numerico/alfabetico.
Prima partono quelli con nome che inizia per numero, esempio "000.pkgtools.sh', "010.xxxx.sh".... e poi quelli con le lettere ma in ordine alfabetico, esempio "cups.sh", "samba.sh" etc...
Gli script sotto /etc/rc.d sono avviati invece da /etc/rc.conf (chiamata a script esterno con valore), esempio "sshd_enable=YES"
Ora anche per gli script in /usr/local/etc/rc.d e' necessario specificare "mysql_enable=YES" in rc.conf, per cui anche questi vengono analizzati in fase di boot, di conseguenza pensavo venisse usato anche per loro lo stesso approccio, in sostanza che rcorder venisse chiamato e per /etc/rc.d e per /usr/local/etc/rc.d. In effetti leggendo la man page rc.d sembra che venga passata solo la prima delle due.
Per cui se vuoi che 'mysql' parta prima di 'mydns' e che ci sia un lasco di tempo tra i 2, il mio consiglio e' quello di rinominare lo script di 'mysql' in qualcosa come '000.mysql...sh" e poi inserire una stringa all'inizio dello script 'mydns...sh' con un 'wait 20' (o altro comando che faccia pausa di X secondi), dove X secondi e' il tempo utile e necessario a '000.mysql...sh' di completare l'operazione di avvio.
Ci avevo pensato, ma speravo di trovare una soluzione un po' piu' pulita.
Ciao
D.
Ciao e grazie.
vBulletin® v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.