Server - Startscript (wie z.B. Autostart unter Windows) unter Debian 6 erstellen - wie?

  • geschlossen

  • Fr0sTBlaZe
  • 6437 Aufrufe 9 Antworten

Diese Seite verwendet Cookies. Durch die Nutzung unserer Seite erklären Sie sich damit einverstanden, dass wir Cookies setzen. Weitere Informationen

  • Server - Startscript (wie z.B. Autostart unter Windows) unter Debian 6 erstellen - wie?

    Hallo zusammen,

    ich beziehe mich auf das Thema.

    Ich bin auf der Suche nach einigen Scripts. Mein neuer Minecraft-Server soll beim Herunterfahren bzw. Hochfahren gestartet oder beendet werden. Nicht einfach von 0 auf 100 beendet werden, sodass Verluste entstehen könnten.

    Folgende Scripte sind also Interessant:
    1. Beim Starten des System -Minecraft- mit Benutzer XYZ starten (nur kein Root!!)
    2. Beim Beenden den Minecraft-Prozess sicher beenden, sodass kein Verlust entsteht
    3. Alle 5-10 Min. prüfen ob der Prozess aktiv ist - wenn nicht, neuen Prozess starten, sodass der Server nicht offl. ist

    Bin Neuling was Minecraft angeht. Evtl. gibt es bereits Scripts, die integriert werden können. Habe jedoch nichts finden können und hoffe auf Hilfe.

    Danke :)

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von Fr0sTBlaZe ()

  • Danke, undeath! :)

    Das hab ich auch flüchtig gesehen, aber will ungerne ein Script auf meinen Server jagen das nicht so funktioniert wie ich es gerne hätte.

    Bin leider nicht so der "Scripter" um auch sehr stark geschachtelten Code zu verstehen, sodass ich eher eine einfach Variante gesucht habe.

    Leider hat der Ersteller auch keine Kommentare dazu geschrieben, sodass ich nichtmal wüsste wo ich was zu machen habe. Finde es als "Ahnungloser" immer sehr positiv, wenn Programmier Kommentare dazu packen, sodass ich als Laie auch weiß wo was gemacht wird damit ich auch Fehler ausschließend kann. Denke kaum das das Script 1zu1 auf meinem Server laufen wird. Anpassungen sind immer nötig..

    Hat das Script jemand im Einsatz und kann es ggf. etwas erklären?


    Edit:
    Ich habe mir das Script mal angesehen und hab davon echt wenig Ahnung, aber kann es sein das dieses Script vergleichbar mit z.B. Befehlen alá /etc/init.d/ANWENDUNG start/stop/reload/usw. ist? Sieht für mich nämlich stark danach aus..

    Wenn dem So ist, dann wurde meine Frage oben anscheinend nicht richtig verstanden (?). Ich Suche ein Script das den Server 'automatisch' startet, wenn der Prozess z.B. durch einen Absturz beendet wurde. Also sollte auch eine Art Überprüfung (alle 5-10 Minuten) stattfinden, die schaut, ob der Prozess noch am Leben ist.

    Mit dem Script von undeath kann ich irgendwie nicht ganz nachvollziehen wo der Prozess auf 'Leben' überprüft wird um weitere Schritte einzuleiten. Kann mich da wer aufklären? ;)

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von Fr0sTBlaZe ()

  • Finde es als "Ahnungloser" immer sehr positiv, wenn Programmier Kommentare dazu packen


    Es wird doch an fast jeder Stelle "geechot" was gerade getan wird.

    Denke kaum das das Script 1zu1 auf meinem Server laufen wird.


    Da das Script ersichtlicher Weise nichts Böses macht geht probieren wohl über studieren ;)

    aber kann es sein das dieses Script vergleichbar mit z.B. Befehlen alá /etc/init.d/ANWENDUNG start/stop/reload/usw. ist?


    Verstehe deine Frage nicht. Jedes Script ist nur eine Befehlssammlung.

    Ich Suche ein Script das den Server 'automatisch' startet, wenn der Prozess z.B. durch einen Absturz beendet wurde.


    Brauchst das Script dazu nur regelmäßig aufrufen.

    mc_start() {
    if pgrep -u $USERNAME -f $SERVICE > /dev/null
    then
    echo "$SERVICE is already running!"
    else
    echo "Starting $SERVICE..."
  • Danke, nile.

    Das ich das Script aufrufen muss, ist mir schon bewusst ;)
    Andere Dienste muss ich ja auch satrten/stopen. Jedoch möchte ich kein Script zum Starten bzw. Stopen haben, sondern ein Script das in regelmäßigen Abständen automatisch prüft ob der Prozess läuft. Bei Absturz halt einfach neustarten.

    Habe irgendwie rausfinden können das es über den sogenannten 'cron' bzw. 'cronjob' gehen soll. Finde einfach nur nicht wie ich das Scrip im cron verweige, sodass es jedes Mal, selbst nach einem Neustart des Systems, durchgeführt wird.

    Bei Windows geht das doch auch einfach mit einer Verknüpfung in den "Autostart" um es mal ganz dirty zu machen :D - gibt es sowas "einfaches" nicht auch bei Debian? :rolleyes:
  • Hallo zusammen,

    danke für die Antworten!

    Ich hab es wie folgt aufgebaut:

    1. Start-Script von undeath genommen und auf meine Bedürfnisse angepasst
    2. Crontab erstellt, der jede 5 Minuten den Befehl "/etc/init.d/minecraft start" ausführt
    3. Server startet, wenn beendet bzw. abgestürzt

    Wie ich ebenfalls probiert habe, startet Crontab auch bei einem Neustart des Systems, sodass der Server nun endgültig laufen sollte.

    Nun muss nur noch der Minecraft Server mit dem Stop-Befehl vor dem Neustart des System beendet werden.
    Sprich nicht einfach abschalten und pech gehabt ;)

    Kann ich Debian sagen was er vor dem Befehl "reboot" alles ausführen soll?
    So könnte ich den Befehlt "/etc/init.d/minecraft stop" vorher raussenden, der den Server beendet und anschließend neu startet.
  • mit dem Befehl

    Quellcode

    1. update-rc.d minecraft defaults


    fügst du das Skript zur Startliste für den Default-Runlevel hinzu. Sobald der Server in einen niedrigeren Runlevel wechselt (Reboot, Shutdown also auch), wird das Programm wieder ordungsgemäß beendet.


    mfg Undeath
    "General, der Mensch ist sehr brauchbar. Er kann fliegen und er kann töten.
    Aber er hat einen Fehler: Er kann denken." - Brecht
    I Don't smoke, I don't drink, I don't fuck! At least I can fucking think!