Hier mal kurz beschrieben, wie man den Bot im Hintergrund laufen lassen kann und bei Absturz automatisch neu gestartet wird.
Läuft der Bot im Hintergrund, muss das Terminalfenster auch nicht mehr geöffnet bleiben. Nützlich falls z.B. nur mit ssh Zugang gearbeitet wird.
Das Skript wurde mit Raspbian Wheezy getestet, sollte aber auch mit Jessie laufen.
Anleitung
Das Paket "screen" installieren.
Im Ordner in welchem der Bot hinterlegt wurde, müssen zwei Dateien erstellt werden. Bitte in den Botordner wechseln.
Folgendes in die Datei "mfbot.sh" schreiben.
Das Startskript erstellen.
Gegebenenfalls den Ordner, in welchem der Bot hinterlegt ist, im Skript Zeile 2 anpassen. In meinem Fall: /home/pi/mfbot. Der aktuelle Pfad kann mit dem Befehl "pwd" herausgefunden werden.
Folgendes in die Datei "cron_mfbot.sh" schreiben.
Code: Alles auswählen
#!/bin/bash
mfbotdir="/home/pi/mfbot"
binname="MFBot_442_Konsole_ARM32"
cd $mfbotdir
process=` ps auxwww | grep './MFBot_442_Konsole_ARM32' | grep -v grep | awk '{ print $2 }'`
if [[ -z $process ]]; then
./mfbot.sh
echo `date` started mfbot
fi
Die beiden Skripte ausführbar machen.
Danach kann der Bot gestartet werden.
Das Cronscript in die Crontab Datei mit aufnehmen.
In die Crontab Datei folgendes schreiben.
Code: Alles auswählen
SHELL=/bin/bash
PATH=/usr/local/bin:/usr/local/sbin:/sbin:/usr/sbin:/bin:/usr/bin:/usr/bin/X11
*/5 * * * * /home/pi/mfbot/cron_mfbot.sh
Die Shelldatei überprüft alle 5 Minuten, ob der Bot gestartet ist. Wenn nicht, wird dieser wieder automatisch gestartet. Sollten andere Zeiten gewünscht sein, bitte
hier die Beispiele anschauen.
Um den Bot aus dem Hintergrund zu holen, gibt man folgendes ein.
Um ihn wieder in den Hintergrund zu schicken:
Code: Alles auswählen
Tastenkombination STRG + A drücken und danach Taste D drücken