Sto lavorando a un progetto che è un EmailServer mono. Ho provato ad aggiungere un servizio al systemd in modo che si avvii automaticamente durante l'avvio ma sto riscontrando un problema.
Ho creato lo script e aggiunto /lib/systemd/system/emailserver.service
e quindi eseguito ln -s /lib/systemd/system/emailserver.service /etc/systemd/system/emailserver.service
.
Ho quindi eseguito systemd reload-daemon
seguito da systemctl start emailserver.service
e poi quando corro ps -ef |grep -i emailserver
posso vedere che mono EmailServer.exe
è in esecuzione, tutto sembra buono finora.
Tuttavia, quando riavvio il server nel /var/log/messages
file, contiene quindi il seguente messaggio di errore
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.
Nel mio script emailserver.service ho il seguente
[Unit]
Description=Boardies Email Server Startup Script
[Service]
ExecStart=/home/bits/EmailServer/start.email
Restart=always
[Install]
WantedBy=multi-user.target
Sto usando OpenSuse 12.1
Cosa sto sbagliando, grazie per l'aiuto che puoi fornire.
AGGIORNAMENTO Ho scoperto cosa sta causando l'interruzione del funzionamento del programma all'avvio, ma non sono sicuro di come risolvere questo problema. Il mio programma si basa su un database MySQL e penso che il mio programma si stia avviando prima dell'avvio di MySQL, come posso fare per non caricare il mio servizio fino a dopo l'avvio di MySQL.