Як перезавантажити або вимкнути Linux за допомогою командного рядка

Ви хочете почати спочатку? Цей підручник покаже вам, як чисто і безпечно перезавантажити або вимкнути комп’ютер Linux або macOS з командного рядка.

Ми йдемо вниз

Іноді вам потрібно просто перезавантажитися або повністю вимкнути. Якщо ви працюєте на сервері без графічного інтерфейсу або в сеансі SSH з віддаленим комп’ютером, командний рядок — це єдиний варіант. Linux і Unix-подібні системи, такі як macOS, надають кілька команд для вимкнення або перезавантаження системи прямо з командного рядка.

Ви можете використовувати такі команди:

закрити
перезавантажити
зупинка
вимкнення живлення

Перегляд сторінок man для цих команд може бути заплутаним. Залежно від того, які параметри командного рядка ви виберете, усі ці команди можна виконувати відключення, перезавантаження та зупинки системи. Фактично, сторінки керівництва для перезавантаження, зупинки та вимкнення містять точно така ж інформація.

Що за цим стоїть?

Відповідь криється в systemd bootstrap система, яка замінила поважну систему ініціалізації System V. У світі Linux Fedora почала використовувати systemd у 2011 році. Відтоді він був прийнятий у багатьох дистрибутивах. Debian та Ubuntu перейшли на systemd у 2015 році.

У дистрибутивах на основі systemd команди вимкнення, перезавантаження, зупинки та вимкнення є фактично ярликами, які вказують на команду systemctl. Збереження цих команд забезпечує певний рівень сумісності з дистрибутивами на основі ініціалізації System V. Це означає, що сценарії оболонки (і жорсткі системні адміністратори System V) не згорнуть, якщо їх перемістити на комп’ютер із запущеним на ньому дистрибутивом systemd.

  Як покращити буфер обміну Linux за допомогою CopyQ

Використання вимкнення

Вимкнення або перезавантаження багатокористувацької системи означає, що потрібно планувати заздалегідь. Вам потрібно вирішити, коли ви збираєтеся вимкнути або перезавантажитися, і попередити інших користувачів системи, що наближається завершення роботи та коли. Якщо це ваш власний комп’ютер і ви єдиний, хто ним користується, життя набагато простіше.

Щоб запустити будь-яку з цих команд, ви повинні бути в групі sudo. Тобто ви повинні мати права суперкористувача та мати можливість використовувати команду sudo. Якщо команда, яку ви видали, почне діяти негайно і не вплине на інших користувачів, які ввійшли в систему, вам не потрібно буде використовувати sudo. Якщо ви спробуєте використати одну з цих команд, але команда відхилена, повторіть спробу за допомогою sudo .

За замовчуванням команда shutdown гарантує, що всі процеси зупиняються чисто, усі файлові системи синхронізовано, а вся активність ЦП припинена. Це стан «зупинки». Потім він надсилає повідомлення апарату про відключення живлення. Це, звичайно, стан вимкнення або «вимкнення живлення».

Зазвичай передають деякі параметри завершення роботи, наприклад рядок часу та повідомлення, яке буде надіслано користувачам, які ввійшли в систему, щоб попередити їх про завершення роботи. Давайте заплануємо відключення через 15 хвилин. Введіть shutdown , пробіл, +15, пробіл, а потім повідомлення, яке потрібно надіслати користувачам.

shutdown +15 Shutting down in 15 minutes!

Часовий рядок, який ми використали, становив +15 , що означає 15 хвилин від цього моменту. Знак + необов’язковий. Ми могли б набрати 15.

  Як грати в Path of Exile на Linux

Ми отримуємо відповідь, яка підтверджує, що вимкнення заплановано та коли воно відбудеться. Користувачі, які ввійшли в систему, отримають повідомлення, яке ми надали.

Щоб скасувати вимкнення, скористайтеся опцією -c (скасувати).

shutdown -c

Хоча ви не отримуєте жодного повідомлення про те, що ваше завершення роботи скасовано, ваші користувачі, які ввійшли в систему, отримують сповіщення.

Якщо ви не вкажете рядок часу, вимкнення буде заплановано через одну хвилину. Зауважте, що ви не можете надати повідомлення користувачам, які ввійшли в систему, якщо ви не вказали рядок часу.

shutdown

Якщо ви не можете зачекати навіть хвилини, ви можете використовувати зараз як рядок часу, і вимкнення набуде чинності негайно. Використання зараз це як використання +0.

Рядком часу може бути встановлений час, наприклад 23:00. Він має відповідати формату HH:MM і має бути в 24-годинному форматі. За п’ять хвилин до вимикання системи нові входу заборонені.

Ми знаємо, що дія за замовчуванням вимкнення змушує комп’ютер перейти до стану зупинки, а потім до вимкненого. Ми можемо змінити цю поведінку, передавши їй інші параметри командного рядка.

Параметр -H (зупинка) переведе ваш комп’ютер до стану зупинки, але не попросить обладнання вимкнути живлення.
-P (вимкнення) є дією за замовчуванням. Комп’ютер переводиться до стану зупинки, а потім вимикається.
Параметр -r (перезавантаження) переведе ваш комп’ютер до стану зупинки, а потім перезавантажить його.
Параметр -h (зупинка та вимкнення) такий самий, як і параметр -P. Якщо ви використовуєте -h і -H разом, параметр -H має пріоритет.
Параметр -c (скасувати) скасовує будь-яке заплановане вимкнення, зупинку або перезавантаження.

  Як встановити Day Planner на Linux

Ось приклад, коли ми запланували перезавантаження.

shutdown -r 08:20 System rebooting at 08:20

Команди перезавантаження, зупинки та вимкнення живлення

Ці команди виконують дію, яку передбачає їх назва. Однак кожен з них приймає параметри командного рядка, щоб змусити будь-який з них виконати перезавантаження, зупинку або вимкнення. Але навіщо плутати питання? Ці команди найкраще використовувати за номінальною вартістю.

Якщо ви хочете перезавантажитися зараз, використовуйте reboot . Якщо ви хочете вимкнути живлення зараз, використовуйте poweroff, а якщо ви хочете зупинити систему зараз, використовуйте halt.

reboot

halt

poweroff

Ці команди набувають чинності негайно. Якщо будь-яку з цих команд відхилено, перед ними введіть sudo. Але майте на увазі, що відмова зазвичай відбувається через те, що в систему ввійшли інші користувачі, яких ви збираєтеся перевести в автономний режим.

Яка команда підходить мені?

У багатокористувацьких середовищах використання завершення роботи для виконання цих дій дає вам більше контролю. Можливість планувати вимкнення та перезавантаження, а також сповіщати користувачів за допомогою широкомовного повідомлення буде неоціненною в цих випадках. Для однокористувацького комп’ютера перезавантаження та вимкнення, ймовірно, задовольнить ваші потреби.