Bootstrap Framework 3.3.6

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

Publish your tools and modifications here.
User avatar
By silvinci
Posts Avatar
#301
Die, die ein einfaches ./musicbot.sh {start|stop|restart} suchen, sind mit dem Script von Schizopriest besser bedient.
Für die anderen, die mit einer etwas vertrackteren Serverautomatisierung arbeiten und eh für alles Upstart Scripts verwenden (wie es sich auch gehört ;) ) habe ich hier ein kleines Script fertig gebastelt, das im Grunde dasselbe tut, wie das von Schizopriest, allerdings in der Bedienung komfortabler ist.

Zuerst will das Script ein paar Dinge von euch wissen, die ihr fix eintragen müsst:
  • $user ist der Nutzer unter dem der Bot gestartet werden soll. Ich empfehle einen eigens dafür angelegten Nutzer mit eigenem Home-Verzeichnis zu verwenden. Die Unverbesserlichen tragen hier einfach root oder was auch immer sie nutzen ein. ;)
  • $path ist das der absolute Pfad zum Installationsverzeichnis. Ich beziehe mich hier auf das Home-Verzeichnis meines Nutzers. Sollte euer Bot aber zum Beispiel im Verzeichnis "/usr/bin/TS3Bot" leben, dann wäre das auch der Pfad.
  • $account ist die E-Mail mit der Du Dich hier registriert hast und auf die die Lizenz ausgestellt wurde.
  • $port ist der Port der von dem Web-Interface genutzt werden soll.
  • $admin_pw ist das Passwort mit dem sich der Super-Admin ins Interface einloggen kann.
  • $user_pw ist das Passwort mit dem sich ein normaler User ins Interface einloggen kann.
Code: Select all
stop on shutdown

respawn
respawn limit 5 10

script
        user="musicbot"
        path="/home/$user"

        account="max.mustermann@gmail.com"
        port="8080"
        admin_pw="AdminPasswort"
        user_pw="UserPasswort"

        exec start-stop-daemon --start --name "teamspeak-musicbot" --chuid $user --chdir $path --exec "$path/TS3MusicBot_runscript.sh" -- -account $account -port $port -webif-pw $admin_pw -webif-user-pw $user_pw
end script
Den Newbies erkläre ich dann gerne auch noch, wie man ein Upstart Script installiert und nutzt.
Also, Upstart ist eine (bei Ubuntu) serienmäßig installierte Runlevelverwaltung und ersetzt das alte init.d. Klingt gefährlich, ist aber mega nützlich.

Alle Scripts befinden sich im Verzeichnis /etc/init. Sie sind ganz normale Dateien, die auf .conf enden. Ein Beispiel wäre nun "ts3-musicbot.conf". In diese Datei wird das Script (siehe Oben) hineinkopiert.
Wenn man alles richtig gemacht lässt sich jetzt schon der Bot systemweit, also egal wo ihr gerade seid, starten mit dem Befehl start ts3-musicbot. Zusätzlich gibt es noch die Befehle restart, stop und status. Kleine Nebeninfo: Ihr müsst das ganze natürlich mit root-Rechten machen.

Solltest Du Deinen TeamSpeak Server auf dem selben System installiert haben und steuerst ihn auch über Upstart, dann kannst Du Dein Script noch so abändern, dass der Bot mit dem TS zusammen startet und auch wieder gestoppt wird.
Code: Select all
start on started teamspeak
stop on (stopping teamspeak or shutdown)
Bei weiteren Fragen, wie "WTF?" stehe ich natürlich gerne zur Hilfe bereit. :)
Last edited by silvinci on Sat Jun 01, 2013 4:27 pm, edited 1 time in total.
By d4s_boese
Posts
#914
Hi
das ganze funktioniert bei mir nicht wirklich ich starte es mit start musicbot (conf heist nur musicbot) bekomme dann folgende ausgabe:
Code: Select all
musicbot@lvps83-169-44-205:~$ start musicbot
start: Rejected send message, 1 matched rules; type="method_call", sender=":1.214" (uid=1003 pid=7680 comm="start) interface="com.ubuntu.Upstart0_6.Job" member="Start" error name="(unset)" requested_reply=0 destination="com.ubuntu.Upstart" (uid=0 pid=1 comm="init"))
wenn ich es als root ausgebe folgendes :
Code: Select all
root@lvps83-169-44-205:/home/musicbot# start musicbot
musicbot start/running, process 7545
wenn ich dann status mach sagt er mir stopp/waiting
User avatar
By silvinci
Posts Avatar
#915
Hey

Die erste Fehlermeldung sagt dir im Prinzip nichts anderes, als dass Du den Service als root starten musst. Vielleicht sollte ich das oben im Post noch per Edit einfügen. Danke!
Aber das hast Du ja auch schon erkannt und versucht den Service mit root-Rechten zu starten. Das hat auch funktioniert. Der Service musicbot wurde gestartet und hat die Prozess-ID 7545. Allerdings schmiert dir der Bot direkt wieder ab. Hast du mal in den Logfiles nachgesehen oder versucht stdout zu loggen?
By d4s_boese
Posts
#916
Hast du mal in den Logfiles nachgesehen oder versucht stdout zu loggen?
Habe den log mal gelöscht und dann gestartet die logs bleiben leer. Was ist stdout?

Alles klar, werde ich, wenn ich dafür Zeit ha[…]

1. Shell Script (ts3musicbot_service.sh) Create […]

Unable to set Avatar error

Really? We have not made a change regarding the av[…]

youtube

Schauen wir uns an.

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