Linux EC2 cualquiera y todos los trabajos iniciales que devuelven "servicio no reconocido"


15

Tener una pesadilla al migrar algunos trabajos nuevos de Ubuntu a EC2 Linux (ElasticBeanstalk)

No puedo lograr que la tarea más básica funcione. Estoy usando el siguiente script que funciona perfectamente en Ubuntu pero devuelve el "servicio no reconocido" muy inútil cuando intento iniciarlo en EC2 Linux. He leído que esto suele ser un error de sintaxis, pero eso no sigue si esto es sintácticamente correcto para Ubuntu. Cualquier ayuda enormemente apreciada, solo necesito algún ejemplo de trabajo.

Esto está en /etc/init/test.conf creado como usuario root.

Consola:

# sudo service test start
# test: unrecognized service

/etc/init/test.conf:

description "test"

start on startup

script
  echo $(ping -c 1 serverfault.com) > /var/log/testjob.log
end script

Respuestas:


12

Entonces, por alguna razón, a initctl le gusta y el servicio no ...

sudo initctl start test
test start/running, process 8776

Un error en EC2 Linux me piensa. Mi ejemplo se ajusta exactamente a la documentación, pero no es difícil cambiar a initctl

Si desea verificar qué servicios se están ejecutando, también puede hacerlo:

sudo initctl list

Y para verificar dónde el error de registro lee el archivo en /var/log/messages


Tal vez debería haber buscado esta respuesta antes de pasar un día tratando de arreglarlo yo mismo, y luego tratando de instalar Daemontools ........
Asfand Qazi

1

Si usa AWS Linux AMI en lugar de Ubuntu, use:

start on started network

Agradezco la sugerencia pero no la alegría. Todavía me da el error de "servicio no reconocido"
Mike Miller

¿Qué AMI estás usando?
Optichip

Último EC2 Linux: lo que sea que Amazon haga girar con aplicaciones ElasticBeanstalk. Gracias por su ayuda, encontré una respuesta publicada a continuación
Mike Miller

Genial, lo tendré en cuenta también.
Optichip

Además de su sugerencia, creo que el equivalente de elasticbeanstalk seríastart on started elastic-network-interfaces
Mike Miller el

0

Con upstart, la sintaxis debería ser sudo start testy sudo stop test, en lugar de la sintaxis de "servicio" utilizada por el sistema init.d.


Amazon Linux utiliza una versión antigua de Upstart, que no reconoce trabajos en / etc / init
Asfand Qazi
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.