Форум русскоязычного сообщества Ubuntu


Автор Тема: Авто рестарт  (Прочитано 1251 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн Locomen_

  • Автор темы
  • Новичок
  • *
  • Сообщений: 7
    • Просмотр профиля
Авто рестарт
« : 18 Январь 2019, 19:12:48 »
Мне нужно что бы мой сервер (VPS) каждые 24 часа перезапускался (именно reboot)
После запуска он должен выполнить команду screen -s "server", и в этом скрине должен выполнить ещё 2 команды cd server/ и start.sh
Как такое можно реализовать? Если не вто разделе сорри.

Оффлайн ALiEN175

  • Модератор форума
  • Старожил
  • *
  • Сообщений: 4241
  • Capture the truth
    • Просмотр профиля
Re: Авто рестарт
« Ответ #1 : 18 Январь 2019, 19:23:18 »
sudo crontab -e

0 0 * * * /sbin/shutdown -r now
@reboot /bin/bash -c 'COMMAND1 && COMMAND2'
ASUS P5K-C :: Intel Xeon E5450 :: 8 GB RAM :: Nvidia 8500GT :: XFCE
SAMSUNG N150 :: Intel Atom N450 :: 2 GB RAM :: Intel GMA3150 :: XFCE

Оффлайн Locomen_

  • Автор темы
  • Новичок
  • *
  • Сообщений: 7
    • Просмотр профиля
Re: Авто рестарт
« Ответ #2 : 18 Январь 2019, 19:44:20 »
http://joxi.ru/gmvlvNKiLOnwQA http://joxi.ru/DmBZLjviwGWvYm
Я вроде бы всё добавил, потом пишу reboot
При запуске ничего не работает.

Оффлайн AnrDaemon

  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 27351
    • Просмотр профиля
Re: Авто рестарт
« Ответ #3 : 18 Январь 2019, 19:47:12 »
Мне нужно что бы мой сервер (VPS) каждые 24 часа перезапускался (именно reboot)
Зачем это нужно?
Хотите получить помощь? Потрудитесь представить запрошенную информацию в полном объёме.

Прежде чем [Отправить], нажми [Просмотр] и прочти собственное сообщение. Сам-то понял, что написал?…

Оффлайн Locomen_

  • Автор темы
  • Новичок
  • *
  • Сообщений: 7
    • Просмотр профиля
Re: Авто рестарт
« Ответ #4 : 18 Январь 2019, 19:52:21 »
Нужно. Как я уже описал выше должен сначала происходить ребут, потом выполняться комманды.
Мне нужно что бы создавался screen -s "server", потом в этом скрине должен запускаться скрипт который лежит в server/start.sh - где start.sh сам скрипт.

Оффлайн ALiEN175

  • Модератор форума
  • Старожил
  • *
  • Сообщений: 4241
  • Capture the truth
    • Просмотр профиля
Re: Авто рестарт
« Ответ #5 : 18 Январь 2019, 20:30:07 »
sudo crontab -e открывает редактор, записываете туда строки. Чтобы сохранить изменения - нажать CTRL+O и enter.

screen как-то странно запускаете.
screen -dmS NAME COMMAND
cd server/
cd /полный/путь/к/папке/serverАбсолютно необязательная, кстати, команда. Если сам скрипт написан грамотно, достаточно вызывать его напрямую.
/полный/путь/к/start.shбез всяких cd и sh

В итоге, если скрипт правильно написан, crontab примет такой вид:
0 0 * * * /sbin/shutdown -r now
@reboot /usr/bin/screen -dmS server /полный/путь/к/start.sh


Пользователь добавил сообщение 18 Январь 2019, 20:44:28:
И, пожалуйста, не надо текстовую информацию постить на форум в виде картинок.
Если не ошибаюсь, пользуетесь PuTTY - достаточно выделить текст и он сразу окажется в буфере обмена.
« Последнее редактирование: 18 Январь 2019, 20:47:59 от ALiEN175 »
ASUS P5K-C :: Intel Xeon E5450 :: 8 GB RAM :: Nvidia 8500GT :: XFCE
SAMSUNG N150 :: Intel Atom N450 :: 2 GB RAM :: Intel GMA3150 :: XFCE

Оффлайн Locomen_

  • Автор темы
  • Новичок
  • *
  • Сообщений: 7
    • Просмотр профиля
Re: Авто рестарт
« Ответ #6 : 18 Январь 2019, 20:58:26 »
Такой вопрос. Он будет запускать только когда сам перезапускается или когда я пишу reboot он тоже должен запускать всё?
вот start.sh #!/bin/sh
            BINDIR=$(dirname "$(readlink -fn "$0")")
            while true
            do
                java -Dfile.encoding=utf-8 -Xincgc -server -Xmx1700M -Xms100M -XX:MaxPermSize=1024M -jar core.jar nogui -o true
                echo "To stopping the server, press the key combination Ctrl + C!"
                echo "Reboot:"
                for i in 1
                do
                    echo "$i..."
                    sleep 1
                done
                echo "Reboot complete!"
            done

Оффлайн AnrDaemon

  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 27351
    • Просмотр профиля
Re: Авто рестарт
« Ответ #7 : 18 Январь 2019, 21:43:55 »
Нужно.
ЗАЧЕМ это нужно?
Я со всем своим опытом не могу представить себе ситуации, в которой я бы стал перезагружать VPS без очень большой необходимости.
Хотите получить помощь? Потрудитесь представить запрошенную информацию в полном объёме.

Прежде чем [Отправить], нажми [Просмотр] и прочти собственное сообщение. Сам-то понял, что написал?…

Оффлайн Locomen_

  • Автор темы
  • Новичок
  • *
  • Сообщений: 7
    • Просмотр профиля
Re: Авто рестарт
« Ответ #8 : 18 Январь 2019, 22:13:45 »
Я предоставил всю информацию.

Оффлайн ALiEN175

  • Модератор форума
  • Старожил
  • *
  • Сообщений: 4241
  • Capture the truth
    • Просмотр профиля
Re: Авто рестарт
« Ответ #9 : 19 Январь 2019, 00:15:13 »
AnrDaemon:2funny:
(Нажмите, чтобы показать/скрыть)

Locomen_, по скрипту:
BINDIR=$(dirname "$(readlink -fn "$0")")Фактически ничего не делает. Переменная не используется дальше.

for i in 1
                do
                    echo "$i..."
                    sleep 1
                done
выполняет только sleep 1 - зачем цикл, неясно.
« Последнее редактирование: 19 Январь 2019, 00:40:00 от ALiEN175 »
ASUS P5K-C :: Intel Xeon E5450 :: 8 GB RAM :: Nvidia 8500GT :: XFCE
SAMSUNG N150 :: Intel Atom N450 :: 2 GB RAM :: Intel GMA3150 :: XFCE

Оффлайн ALiEN175

  • Модератор форума
  • Старожил
  • *
  • Сообщений: 4241
  • Capture the truth
    • Просмотр профиля
Re: Авто рестарт
« Ответ #10 : 19 Январь 2019, 02:10:08 »
проблема тут:
java -Dfile.encoding=utf-8 -Xincgc -server -Xmx1700M -Xms100M -XX:MaxPermSize=1024M -jar core.jar nogui -o trueконкретно проблема - core.jar запускается без абсолютного пути. Поэтому ТС и запускал cd. А скрипт запуска особо смысла не имеет.


« Последнее редактирование: 19 Январь 2019, 02:11:57 от ALiEN175 »
ASUS P5K-C :: Intel Xeon E5450 :: 8 GB RAM :: Nvidia 8500GT :: XFCE
SAMSUNG N150 :: Intel Atom N450 :: 2 GB RAM :: Intel GMA3150 :: XFCE

Оффлайн Locomen_

  • Автор темы
  • Новичок
  • *
  • Сообщений: 7
    • Просмотр профиля
Re: Авто рестарт
« Ответ #11 : 19 Январь 2019, 12:46:33 »
проблема тут:
Код: [Выделить]
java -Dfile.encoding=utf-8 -Xincgc -server -Xmx1700M -Xms100M -XX:MaxPermSize=1024M -jar core.jar nogui -o true
конкретно проблема - core.jar запускается без абсолютного пути. Поэтому ТС и запускал cd. А скрипт запуска особо смысла не имеет.
И как исправить этот скрипт?

Пользователь добавил сообщение 19 Январь 2019, 12:50:15:
Код: [Выделить]
for i in 1
                do
                    echo "$i..."
                    sleep 1
                done
выполняет только sleep 1 - зачем цикл, неясно.
Скрипт не должен останавливаться. Если core.jar остановиться, то он обязательно должен запуститься снова.
« Последнее редактирование: 19 Январь 2019, 12:50:15 от Locomen_ »

Оффлайн ALiEN175

  • Модератор форума
  • Старожил
  • *
  • Сообщений: 4241
  • Capture the truth
    • Просмотр профиля
Re: Авто рестарт
« Ответ #12 : 19 Январь 2019, 14:47:52 »
#!/bin/bash
            while sleep 1
            do
            java -Dfile.encoding=utf-8 -Xincgc -server -Xmx1700M -Xms100M -XX:MaxPermSize=1024M -jar "/полный/путь/к/core.jar" nogui -o true
            done
           
ASUS P5K-C :: Intel Xeon E5450 :: 8 GB RAM :: Nvidia 8500GT :: XFCE
SAMSUNG N150 :: Intel Atom N450 :: 2 GB RAM :: Intel GMA3150 :: XFCE

Оффлайн Locomen_

  • Автор темы
  • Новичок
  • *
  • Сообщений: 7
    • Просмотр профиля
Re: Авто рестарт
« Ответ #13 : 19 Январь 2019, 14:57:47 »
Я исправил start.sh и расположил его в /root/start.sh
Я прописал reboot и подождал включения в итоге скрин не создался.
root@ubuntu-s-2vcpu-2gb-fra1-01:~# screen -x server
There is no screen to be attached matching server.
Вот сам крон
0 0 * * * /sbin/shutdown -r now
@reboot /usr/bin/screen -dmS server /root/start.sh
Или что бы скрин создался сервер должен ребутнуться только по крону, а не когда я ему пишу?

Оффлайн ALiEN175

  • Модератор форума
  • Старожил
  • *
  • Сообщений: 4241
  • Capture the truth
    • Просмотр профиля
Re: Авто рестарт
« Ответ #14 : 21 Январь 2019, 16:54:59 »
cмотрите логи
journalctl -b0 | grep -i cron
ASUS P5K-C :: Intel Xeon E5450 :: 8 GB RAM :: Nvidia 8500GT :: XFCE
SAMSUNG N150 :: Intel Atom N450 :: 2 GB RAM :: Intel GMA3150 :: XFCE

 

Страница сгенерирована за 0.308 секунд. Запросов: 24.