Java Datei mit Startscript starten (Linux)?
Hallo,
Ich habe einen Linux Server mit Ubuntu 18.04 und versuche folgendes:
Ich habe eine jar Datei die ich gerne per Script automatisch in einem extra screen öffnen möchte. Ich habe dafür eine start.sh in nano erstellt und folgendes eingegeben:
screen -S Name
java -jar Dateiname
Jetzt öffnet er einen screen, startet aber die Jar Datei nicht. Ich muss immer in dem Screenfenster manuell Java -jar ... einegeben.
Was mache ich falsch?
LG
Habs gelöst. Ich musste einfach nur beide commands nebeneinander statt unterienander schreiben.
3 Antworten
Warum machst du das mit Screen? Dafür ist das Werkzeug eigentlich nicht gedacht.
Empfehlenswert ist ein Systemd-Unit. Vorteile:
- Fehler werden gelogt (wenn richtig konfiguriert), was sehr gut zur Fehlerkorrektur ist.
- Man kann einstellen, dass der Dienst neustartet, sobald er (aus welchem Grund auch immer) sich beendet.
- Man kann leicht einstellen, dass der Dienst bei jedem Neustart automatisch mit gestartet wird.
Siehe https://wiki.ubuntuusers.de/systemd/
Hinweise:
- Ubuntu 18.04 bekommt keine Updates und auch keine Sicherheitsupdates mehr (ab Juni) und sollte definitiv gegen am besten 22.04 ersetzt werden.
- Ich vermute, dass es sich bei der Java-Datei um einen Minecraft-Server handelt? Dann solltest du dir vorher Informationen zum Thema Server-Betrieb, -Wartung und -Sicherheit anlesen, sonst wird dein Server schneller Teil eines Botnetzes, als du Botnetz schreiben kannst.
Was ist das Ziel, das du erreichen möchtest?
Normalerweise macht es keinen Sinn, screen in einem Skript zu verwenden.
Naja das programm (Jar Datei) soll in einem screen gestartet werden, damit es beim schließen von Putty nicht herunterfährt. Das ganze mit einem ./start.sh automatisch.
Habs aber gelöst. Ich musste einfach nur beide commands nebeneinander statt unterienander schreiben.
Tja , wozu hast die Melone auf dem dünnen Stängelchen zwischen deinen Schultern ?
Erst Denken dann Posten

Ja mag sein, so gehts jetzt aber auch.
Ja ich muss da mal das Update machen.
Nö tut es nicht :)