EC2 linux все безусловные рабочие места, возвращающие «неопознанную услугу»


15

Кошмарная миграция некоторых новых заданий из Ubuntu в EC2 Linux (ElasticBeanstalk)

Я не могу выполнить даже самую простую задачу. Я использую приведенный ниже скрипт, который отлично работает на Ubuntu, но возвращает очень бесполезный «нераспознанный сервис», когда я пытаюсь запустить его в EC2 Linux. Я читал, что это обычно синтаксическая ошибка, но это не следует, если это синтаксически нормально для Ubuntu. Любая помощь высоко ценится, мне просто нужен любой рабочий пример.

Это в /etc/init/test.conf, созданном от имени пользователя root.

Приставка:

# 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

Ответы:


12

Так что почему-то initctl это нравится, а сервис - нет ...

sudo initctl start test
test start/running, process 8776

Баг в EC2 Linux мне кажется. Мой пример точно соответствует документации, но нет ничего сложного, чтобы перейти на использование initctl

Если вы хотите проверить, какие службы запущены, вы также можете сделать это:

sudo initctl list

И чтобы проверить, где ошибка журнала, прочитайте файл в /var/log/messages


Возможно, мне следовало искать этот ответ, прежде чем провести день, пытаясь исправить его самостоятельно, а затем попытаться установить daemontools ........
Asfand Qazi

1

Если вы используете AWS Linux AMI вместо Ubuntu, используйте:

start on started network

Ценю предложение, но не радость. Все еще выдает мне ошибку «неопознанный сервис»
Майк Миллер,

какой AMI вы используете?
Optichip

Новейшая версия EC2 Linux - все, что Amazon раскручивает с приложениями ElasticBeanstalk. Спасибо за вашу помощь, нашел ответ размещен ниже
Майк Миллер

Отлично, я тоже запомню это.
Optichip

В дополнение к вашему предложению я думаю, что эквивалент эластичного стебля будетstart on started elastic-network-interfaces
Майк Миллер

0

При использовании upstart синтаксис должен быть sudo start testи sudo stop test, а не синтаксис «service», используемый системой init.d.


Amazon Linux использует старую версию Upstart, которая не распознает задания в / etc / init
Asfand Qazi
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.