Bootstrap Framework 3.3.6

Over a dozen reusable components built to provide iconography, dropdowns, input groups, navigation, alerts, and much more...

Wenn du Hilfe benötigst, stelle deine Frage hier.
Um die Entwickler etwas zu entlasten, können Nutzer anderen Nutzern auch helfen.
By knie
#6798
Ich verwende Ubuntu 12.04.5 LTS und habe den TS3Bot über einen eigenen User laufen.
Seit einiger Zeit hängt sich der Bot bei Streams nach einigen Tagen auf.

Damit ich nicht jedes mal von Hand einen Neustart durchführen muss, wollte ich dies via CronJob einbinden.

Hier ein Script, welcher soweit funktioniert:
Code: Select all
#!/bin/sh

screen -S musicbot1 -X stuff 'stop'

sleep 15

cd /home/musicbot/TS3MusicBot

echo "start musicbot1"
screen -dmS musicbot1 ./TS3MusicBot_runscript.sh -account EMAIL -port 8090 -webif-pw MASTERPW -webif-pw-user USERPW
Mit crontab -e habe ich wie folgt hinterlegt:
Code: Select all
0 5 * * * /home/musicbot/TS3MusicBot/musicbot.sh
Mit grep CRON /var/log/syslog sehe ich zwar das der Job glaufen ist, aber nicht ob es erfolgreich war.
Und nach den Verbindungszeiten sehe ich, dass der Bot eben nicht neugestartet wurde.

Gibt es hier noch etwas zu beachten bzw. hat jemand einen Tipp?

Besten Dank vorab!
Gruß knie
User avatar
By Ronneberg
Posts Avatar
#6799
Stoppt der TS3MusicBot wenn du
Code: Select all
screen -S musicbot1 -X stuff 'stop'
ausführst?
Ist am Ende der crontab Datei eine freie Zeile? Falls nicht einfach nach dem letzten cronjob noch einmal Enter drücken.
Läuft crontab? Wenn
Code: Select all
pgrep cron
keine Zahl zurückgibt einfach cron über einen der Commands starten:
Code: Select all
service cron start
/etc/init.d/cron start
Ist das Script ausführbar?
Code: Select all
chmod +x script.sh
By knie
#6809
Danke für die schnelle Rückmeldung.

Habe den Script angepasst, da ich hier erst dachte was vergessen zu haben (/n):
Code: Select all
screen -S musicbot1 -X stuff 'stop/n'
Doch leider passiert auch mit 'stop/n' nichts und der Screen läuft weiter.

Also habe ich nun etwas anderes probiert:
Code: Select all
screen -p 0 -S musicbot1 -X quit
Nicht unbedingt die saubere Art den Bot zu stoppen, aber es geht.

Der crontab läuft, bekomme mit
Code: Select all
pgrep cron
eine Ausgabe. Neustart des Dienstes habe ich auch schon versucht gehabt ^^

Was soll mit dem Befehl
Code: Select all
chmod +x script.sh
explizit passieren oder ausgegeben werden?
By knie
#6812
Erstmal danke für die Hilfe bzw. Denkanstoß ;)

Final läuft der Script inkl. crontab:
Code: Select all
#!/bin/sh

screen -p 0 -S musicbot1 -X quit

sleep 15

cd /home/musicbot/TS3MusicBot

echo "start musicbot1"
screen -dmS musicbot1 ./TS3MusicBot_runscript.sh -account EMAIL -port 8090 -webif-pw MASTERPW -webif-pw-user USERPW
Ist mit dem Beenden nicht ganz sauber, da der TS3Client "MusicBot" als TimeOut fliegt. Daher kommt der neue Client als "MusicBot1" neu ins TS.
User avatar
By Crypto90
Posts Custom Custom Avatar
#6813
Kurze Ergänzung :)

Damit der TS3MusicBot durch Beenden des Screens sauber herunter gefahren wird, nutze anstatt:
Code: Select all
screen -p 0 -S musicbot1 -X quit
folgenden Befehl:
Code: Select all
screen -X -S musicbot1  quit
Somit wird der screen mit einem Sigterm Befehl beendet (worauf Programme wie auch der TS3MusicBot reagieren kann), anstatt mit einem Sigkill (was gnadenlos alles killt, ohne dem Prozess die Chance zum selbst beenden zu lassen).
By Shadow86
#7122
Da keine weitere Antwort darauf erfolgte, gehe ich davon aus, das nun alles soweit funktioniert und schließe dieses Thema - solltest du doch noch Fragen haben, erstelle einfach einen neuen Thread oder besuche uns auf unserem Support-TS3.

Liebe Grüße

Shadow86

Mebmox 500 mg is a powerful and effective medicati[…]

If you’ve been grinding Steal a Brainrot for[…]

CLONE CARDS ATM REAL SUPPLYING STORE DUMPS WITH PI[…]

CLONE CARDS ATM REAL SUPPLYING STORE DUMPS WITH PI[…]

Swap-in out addons, use only what you really need!