Я працюю над проектом, який є монопольним EmailServer. Я спробував додати службу до systemd, щоб вона запускалася автоматично під час завантаження, але у мене виникли проблеми.
Я створив сценарій, додав /lib/systemd/system/emailserver.service
і потім запустив ln -s /lib/systemd/system/emailserver.service /etc/systemd/system/emailserver.service
.
Потім я виконав systemd reload-daemon
, systemctl start emailserver.service
а потім, коли я біжу, ps -ef |grep -i emailserver
я можу побачити, що mono EmailServer.exe
працює, і все виглядає добре.
Однак, коли я перезавантажую сервер у /var/log/messages
файлі, він містить таке повідомлення про помилку
Jul 16 19:41:02 dev-server systemd[1]: emailserver.service holdoff
time over, scheduling restart. Jul 16 19:41:02 dev-server systemd[1]:
emailserver.service holdoff time over, scheduling restart. Jul 16
19:41:03 dev-server systemd[1]: emailserver.service holdoff time over,
scheduling restart. Jul 16 19:41:03 dev-server systemd[1]:
emailserver.service holdoff time over, scheduling restart. Jul 16
19:41:03 dev-server systemd[1]: emailserver.service holdoff time over,
scheduling restart. Jul 16 19:41:04 dev-server systemd[1]:
emailserver.service holdoff time over, scheduling restart. Jul 16
19:41:04 dev-server systemd[1]: emailserver.service start request
repeated too quickly, refusing to start.
У моєму скрипті emailserver.service у мене є наступне
[Unit]
Description=Boardies Email Server Startup Script
[Service]
ExecStart=/home/bits/EmailServer/start.email
Restart=always
[Install]
WantedBy=multi-user.target
Я використовую OpenSuse 12.1
Що я роблю неправильно, дякую за будь-яку допомогу, яку ви можете надати.
ОНОВЛЕННЯ Я з'ясував, що змушує програму припинити роботу під час завантаження, але я не знаю, як я можу виправити цю проблему. Моя програма спирається на базу даних MySQL, і я думаю, що моя програма запускається до запуску MySQL, як я можу змусити службу не завантажуватися до моменту запуску MySQL.