-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 El 2006-02-02 a las 17:34 +0100, Camaleón escribió:
El 2/02/06, Carlos E. R. escribió:
¿Y con chkconfig upsmon?
chkconfig --list upsmon
upsmon 0:off 1:off 2:on 3:on 4:on 5:on 6:off
Claro, me aparece iniciado, pero porque lo he activado a mano.
Bueno, no, ahí no indica ni iniciado ni no iniciado, sino simplemente marcado para iniciarse en los nivles 3, 4 y 5. Lo del 4 no lo entiendo.
Hay un "bug" en la 9.3, y posiblemente en la 10, por la que aunque un script tenga los enlaces bien puestos, no arranque automáticamente.
Ups, vaya, eso no es un bug, es un "bugazo"... ¿y tiene solución? ¿pasa con todos o sólo coan algunos especiales? Porque tener que iniciar de forma manual los programas no me parece una buena idea... :-P
Pues te cuento de que va el bug para que puedas mirarlo. En el directorio "/etc/init.d/" hay unos ficheros "raros": Makefile .depend.boot .depend.start .depend.stop Estos ficheros son realmente los que gobiernan que es lo que se ejecuta y cuando - olvídate de los enlaces, ya no se usan. ¿No me crees? Mal hecho :-P En "/etc/sysconfig/boot" encontramos estas dos desconocidas variables: ## Type: yesno ## Default: yes # # Run all scripts or rather start/stop all services # which are independent from each other in parallel. # RUN_PARALLEL=yes ## Type: yesno ## Default: yes # # Run all scripts or rather start/stop all services # by using the make command and if RUN_PARALLEL is # set to "yes" just use a make like boot behaviour # #Cer: este es el problema de init. O parte de el. # USE_MAKE=yes Esos son los ajustes por defecto de la 9.3 (y siguientes, imagino). ¡Y NO ESTÁ DOCUMENTADO! Estos "!$"%$/&%(/&)( de SuSE tienen la PIIIII manía de no documentar los cambios cruciales que hacen. Ah, ¡por cierto! Poner «USE_MAKE=no» no te garantizo que te haga caso, pero puedes probar. El problema que yo tuve es que el fichero ".depend.start" contenía esta linea y similares: apache2: nfs network named xntpd postgresql postfix.rpmorig.borraralgundia mysql En todos los sitios donde tenía que estar "postfix" tenía puesto "postfix.rpmorig.borraralgundia", que era un fichero de backup que yo había dejado en el directorio "/etc/init.d", y que hacía que se liase que no veas. Ese ".depend.start" es el fichero que lista todas las dependencias entre los diversos scripts de inicio: cual depende que quien para iniciarlo antes. De esa manera determina de paso cuales pueden ejecutarse en paralelo, porque sus antecesores ya han sido ejecutados. Y se supone que si pones «USE_MAKE=no» usará el método tradicional de los enlaces. En tu caso, si "upsmon" no está en ese fichero, no arrancará. ¿Como se hace para que aparezca ahí? Pues el script tiene que cumplir las normas suseras... tiene que contener este bloque (mutandis mutandi): ### BEGIN INIT INFO # Provides: FOO # Required-Start: $syslog $remote_fs # Should-Start: $time ypbind sendmail # Required-Stop: $syslog $remote_fs # Should-Stop: $time ypbind sendmail # Default-Start: 3 5 # Default-Stop: 0 1 2 6 # Short-Description: FOO XYZ daemon providing ZYX # Description: Start FOO to allow XY and provide YZ # continued on second line by '#<TAB>' # should contain enough info for the runlevel editor # to give admin some idea what this service does and # what it's needed for ... # (The Short-Description should already be a good hint.) ### END INIT INFO Y se supone que el comando "chkconfig" crea los .depend.*; mejor dicho, insserv lo hace ( INSSERV(8) ) Lo reporté en su dia en la lista inglesa: | Date: Mon, 25 Apr 2005 10:15:51 +0200 (CEST) | From: Carlos E. R. | Subject: [SLE] Strange problem starting services in SuSE 9.3 | X-Message-Number-for-archive: 233771 y: | Date: Tue, 26 Apr 2005 14:05:19 +0200 (CEST) | From: Carlos E. R. | Subject: [SLE] init.d no longer works | X-Message-Number-for-archive: 233934 - -- Saludos Carlos Robinson -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.0 (GNU/Linux) Comment: Made with pgp4pine 1.76 iD8DBQFD4m+UtTMYHG2NR9URArEkAJ9KxyPBgcG7UMyhnNJe2gqFbytoOQCfZD7r +X6rE75yluhdrAlqiPLRCvY= =e9iO -----END PGP SIGNATURE-----