Вопрос Ubuntu и Screen

SNR93

Инструктор
Пользователь
Сообщения
219
Решения
7
Имею сервер на ubuntu. Запускаю сервера через screen. Но вот незадача. Если сервер перезагружается, то он уже не запускается в том же контейнере screen. Как заставить сервер запускаться там же?
Для примера:
screen -S vanilla
sh start.sh
(запуск сервера)

теперь если не произошло перезагрузки сервера и я напишу screen -r vanilla то все ок, я попаду в консоль сервера. Но если сервер перезагрузился, то в screen -r vanilla я увижу только лог остановки сервера. Как заставить сервер запускаться там же. чтобы при восстановлении я снова мог попасть в консоль сервера?
 
Вот так попробуй:

YAML:
#!/bin/bash
while true
do
    java -Xms6G -Xmx12G -jar PaperSpigot.jar nogui

    echo "Выключить сервер = CTRL+C"
    echo "Перезапуск через:"
    for i in 5 4 3 2 1
    do
        echo "$i..."
        sleep 1
    done
done
и как тогда мне открыть необходимую консоль сервера если у меня их 4 на машине?
 
Имею сервер на ubuntu. Запускаю сервера через screen. Но вот незадача. Если сервер перезагружается, то он уже не запускается в том же контейнере screen. Как заставить сервер запускаться там же?
Для примера:
screen -S vanilla
sh start.sh
(запуск сервера)

теперь если не произошло перезагрузки сервера и я напишу screen -r vanilla то все ок, я попаду в консоль сервера. Но если сервер перезагрузился, то в screen -r vanilla я увижу только лог остановки сервера. Как заставить сервер запускаться там же. чтобы при восстановлении я снова мог попасть в консоль сервера?
screen -dmS survival
Создаст демон с именем survival.
 
screen -dmS survival
Создаст демон с именем survival.
В bash script вставлять?
#!/bin/bash
screen -dmS survival
while true
do
java -Xms6G -Xmx12G -jar PaperSpigot.jar nogui

echo "Выключить сервер = CTRL+C"
echo "Перезапуск через:"
for i in 5 4 3 2 1
do
echo "$i..."
sleep 1
do done
done
Не правильно?
 
Назад
Сверху Снизу