Планування перезавантаження на віддалено розташованому сервері Ubuntu


17

Я працюю на сервері ubuntu, розташованому в тому місці, куди я зазвичай не заходжу. Я використовую ssh над openvpn для доступу до нього. Машина має безліч провідних інтерфейсів, безліч статичних маршрутів і безліч шлюзів за замовчуванням до WAN. Я часто змінюю інтерфейсні адреси та маршрути. У більшості випадків зміни, які я роблю, є тимчасовими - перезавантаження призведе до скидання проведених експериментів. У деяких випадках деякі з цих модифікацій пішли не так, і машина вийшла з автономного режиму. У таких випадках мені довелося викликати когось у місці, де розташований сервер, щоб відправити машину на перезавантаження.

Тепер я хотів би запланувати перезавантаження - скажімо, через 2 години машина повинна перейти в цикл перезавантаження. І за ці дві години я можу робити будь-які тимчасові експерименти, які хочу. Якщо всі тимчасові зміни вдаються, то я повинен мати можливість запобігти перезавантаженню "afer 2 hour". Тому я хочу:

  1. Як сказати серверу перезавантажуватися після сертифікаційного часу?
  2. Якщо я вирішив, що машина не повинна перезавантажуватись, я можу її скасувати.

Відповіді:


14

На тип терміналу, shutdown -r 10 Waiting 10 minutes before the restart&який зробить перезавантаження сервера через 10 хв, передайте повідомлення, пояснюючи це, і натискання клавіші управління + c перерве запит перезавантаження.

На тип термінала, shutdown -r 18:00 Rebooting at 18:00 hours&який змусить перезавантажити сервер о 18:00, вийде повідомлення, що пояснює, що його можна перервати з управлінням + c.

Ви також можете перервати будь-який запит на зупинку / перезавантаження на вашому "робочому" терміналі за допомогою shutdown -a.


2
Це трохи проблематично, оскільки воно є інтерактивним та блокує оболонку, яку ви працюєте. Я не впевнений, чи буде це передбачувано працювати над SSH, якщо сеанс припиниться.
Ален О'Деа

Я не зміг знайти жодної комбінації, nohupі sudoце зробило б цю роботу, якщо запустити з звичайного сеансу ssh як звичайний користувач групи адміністратора.
HDave

Чи можна це запустити в поєднанні з Screen, щоб дозволити застосувати команду і відмовити сеанс ssh?
Енді Девіс

30

Ви також atможете планувати перезавантаження. Наприклад, sudo at 22:00запустити команду о 22:00 як root. Потім введіть команду, яку потрібно виконати: /sbin/shutdown -r nowі закінчіть ctrl-d. Якщо ви вирішите не виконувати цю команду, запустіть, sudo atrm 1щоб видалити першу з atчерги. З sudo atqвами можна побачити чергу.


Це рішення ідеально!
Сукіма

5
Це слід позначити як правильну відповідь! atСімейство команд то , що кожен сервер адмін повинен знати.
HDave

2
у випадку, якщо ви не новачок at, спочатку виконайте sudo at 22:00. Це переводить вас у своєрідну оболонку. Потім ви вводите команду і ctrl-dдля виходу. Дивіться також mixuperic.com/ubuntu/…
Тім Річардсон,
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.