Запустить программу при загрузке (сервер Debian)

Путь к папке: root/CumulusServer

Команда для выполнения: ./CumulusServer --daemon [--pidfile=/var/run/CumulusServer.pid]

Я потратил немало времени, пытаясь понять, как изменить init.d ? Любая помощь будет оценена при решении этой проблемы.


Ошибки:

 [FAILED] cd /root/CumulusServer | ./CumulusServer --daemon [--pidfile=/var/run/CumulusServer.pid] to /etc/rc.local [FAILED] /root/CumulusServer | ./CumulusServer --daemon [--pidfile=/var/run/CumulusServer.pid] to /etc/rc.local [FAILED] cd /root/CumulusServer && ./CumulusServer --daemon 

Если вы не возражаете, чтобы эта команда была последней вещью во время загрузки, переместите ее в /etc/rc.local .

Обратите внимание, что rc.local обычно содержит оператор, такой как exit 0 , обязательно добавьте свою команду перед тем, чтобы он действительно запускался.

Для более сложных действий и разрешения запуска / перезапуска этого демона / (re) вручную после загрузки вам нужно будет добавить эту команду в свой собственный файл в /etc/init.d как вы изначально пытались. Взгляните на эту статью Вики Вики, чтобы помочь вам начать работу.

Не принимать во внимание cd , | и && . Вам просто нужно использовать абсолютный (полный) путь к файлу CumulusServer, который вы пытаетесь выполнить. Кроме того, вы можете удалить скобки [ ] из опции --pidfile . При отображении примеров синтаксиса командной строки программы скобки обозначают необязательный раздел команды, и они фактически не используются.

Это добавит вашу команду в rc.local, выше выхода 0:

 $ sudo sed -i '/^exit/ i\/root/CumulusServer/CumulusServer --daemon --pidfile=/var/run/CumulusServer.pid\' /etc/rc.local