Chcę, aby plik .jar był uruchamiany za każdym razem, gdy serwer uruchamia się (używamy VPS), więc edytowałem crontab, używając, crontab -ea następnie dodając @reboot bash /home/bash/startserver.sh. Ale nawet nie dotarłem do momentu, w którym skrypt działa.
Oto mój skrypt:
#!/bin/bash
screen -S bukkit
cd $HOME/server
java -jar bukkit.jar
Powodem, dla którego muszę użyć screenjest to, że kiedy uruchamiam bukkit.jar, wchodzi do konsoli, gdzie mogę wprowadzić więcej poleceń dla tego programu (jestem pewien, że wszyscy znacie Minecraft i jego serwery na tej stronie, chociaż , haha), ale muszę być w stanie wykonywać inne polecenia jako root i dla innych programów podczas działania, a nawet zamknąć moją sesję PuTTY.
Jedynym problemem jest to, że po uruchomieniu tego skryptu tworzy sesję ekranową, ale jego identyfikator nie jest wymieniony screen -ls, ponieważ identyfikator jest pusty. Zamiast tego muszę /run/screen/S-rootznaleźć identyfikator, a następnie użyć typowego screen -X -S $name quitna nim dokumentu.
Może to nawet nie jest możliwe, a może istnieje prostszy sposób na zrobienie tego (wolałbym prostsze), ale nie mogę zrozumieć, dlaczego to nie działa. A jeśli to możliwe, czy można ponownie dołączyć do sesji screen -S bukkitpodczas uruchamiania skryptu bash? (Chyba wiele pytań, ale bardzo dziękuję za pomoc! (Nawiasy))