staging.inyokaproject.org

Service erstellen der nach MYSQL startet - Brauche einen Tipp

Status: Ungelöst | Ubuntu-Version: Server 18.04 (Bionic Beaver)
Antworten |

Nur-Ein-Blogger

Anmeldungsdatum:
4. April 2011

Beiträge: 146

Hallo, ich habe für einen Benkannten einen Service geschrieben.

Problem: Er nutzt einen TS3 Bot der nach einem reboot versucht zu seiner Datenbank zu connecten. Handelt sich wohl um diesen bot: https://www.stefan1200.de/forum/index.php?topic=3.0

Problem ist, dass er beim neustart wohl einen Fehler auswirft, weil mysql noch nicht soweit ist.

Habe ihm gesagt, dass mir da 2 sachen einfallen. 1. im crontab mit sleep arbeiten also

1
@reboot spleep 300 && Script.sh bla keks

2. per service den ich bevorzuge. Also habe ich ihm nachfolgendes geschrieben:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
nano /root/ts3Server/ts3bot.sh
#!/bin/bash
sleep 120
service jts3servermod start
echo "Botscript startet" >> /root/ts3Server/ts3bot_log.txt


nano /etc/systemd/system/ts3bot_systemd.service
[Unit] 
After=mysql.service 

[Service] 
ExecStart=/root/ts3Server/ts3bot.sh

[Install] 
WantedBy=default.target



chmod 744 /root/ts3Server/ts3bot.sh
chmod ogo+x /root/ts3Server/ts3bot.sh

systemctl daemon-reload 
systemctl enable ts3bot_systemd.service 

So in der /root/ts3Server/ts3bot_log.txt habe ich auch entsprechenden Code zu stehen. Scheint also zu klappen.

Er sagte aber das geht nicht, er arbeitet jetzt mit dem cron und sleep befehl.

Nun wollte ich mich bei dem Mod nicht erst im Forum registrieren sondern mal euch fragen ob an meinem Service etwas falsch ist oder der an sich richtig ist.

Vielleicht habe ich ja einen Fehler gemacht.

LG

rklm Team-Icon

Projektleitung

Anmeldungsdatum:
16. Oktober 2011

Beiträge: 13242

Ohne Fehlermeldungen oder Log-Ausgaben ist es schwierig. Was sagt denn journalctl -u ts3bot_systemd.service?

Merkwürdig sind auch Zeile 3 und 4: der sleep sollte nicht nötig sein, wenn die Abhängigkeiten korrekt definiert sind. Außerdem ist es sehr merkwürdig, dass Du in einer Unit service verwendest. Du willst ja gerade, dass Systemd die Abhängigkeiten kennt und entsprechend Dienste startet.

Du hast ja auch anscheinend bereits eine Unit jts3servermod - die würde ich im Zweifel korrekt konfigurieren. Du kannst ja in /etc/systemd/system Unit-Dateien anlegen, die die aus /lib/systemd/system verdecken. Dann kopierst Du einfach die originale Unit dorthin und modifizierst sie.

Antworten |