Мой сервис, исполняемый файл с именем / opt / mcp / rpe, требует, чтобы также был запущен второй исполняемый файл, называемый /opt/mcp/McpVp.
В моем файле conf: /etc/init/mcp.conf у меня есть:
description "Run MCP"
start on runlevel [2345]
stop on runlevel [016]
script
# Start the RPE application
/opt/mcp/rpe -d f -c /opt/mcp
# Start the McpVp application
/opt/mcp/McpVp &> /var/tmp/mcp.log
end script
Когда я запускаю это с помощью: sudo start mcp
, я вижу, что исполняемый файл rpe запускается, а McpVp - нет. Я также пытаюсь запустить оба в фоновом режиме, это также, похоже, не работает, и что еще хуже, когда я пытаюсь остановить скрипт, он не может найти «экземпляр» - я думаю, потому что он теряется в фоновом режиме.
Итак, есть ли способ запустить 2 (или более) процесса, чтобы он работал с командами start и stop? (то есть sudo start mcp
и sudo stop mcp
)
Я знаю, что есть другие способы решения этой проблемы, но я специально хочу знать, могу ли я сделать это, используя файл .conf.
Что Вы делаете относительно легко разделяется конфигурация в 2 конфигурации одного исполняемого файла с зависимостью между ними. Затем, когда Вы start mcp
, это автоматически запускает mcp2 также, и когда Вы stop mcp
, это останавливает mcp2 также. Вот файлы:
#----/etc/init/mcp.conf
description "Run MCP"
start on runlevel [2345]
stop on runlevel [016]
# Start the RPE application
exec /opt/mcp/rpe -d f -c /opt/mcp
и
#----/etc/init/mcp2.conf
description "Run MCP 2"
start on starting mcp
stop on stopped mcp
# Start the McpVp application
exec /opt/mcp/McpVp &> /var/tmp/mcp.log