Как перезагрузить ubuntu через консоль
Перейти к содержимому

Как перезагрузить ubuntu через консоль

  • автор:

Перезагрузка компьютера в Linux

Эта статья ориентирована на самых новичков в Linux ну и тех кого интересует как перезагрузить Linux из консоли. Для меня перезагрузить компьютер в терминале или с помощью графического интерфейса это элементарно, но это база, не все новички ее знают и надо об этом написать.

Сегодня мы рассмотрим такие вопросы, как команда перезагрузки Linux из консоли, перезагрузка удаленно, и непосредственно перезагрузка в графическом интерфейсе. Начнем, пожалуй, с обычной перезагрузки системы.

Перезагрузка Linux в графическом интерфейсе

Здесь, как говорится, что может быть проще. Рассмотрим сначала перезагрузку в Ubuntu Unity. Достаточно нажать на кнопку с шестеренкой в правом верхнем углу экрана, и выбрать пункт Выключение:

reboot_ubuntu1

Затем в открывшимся окне кликнуть по пункту Перезагрузка:

reboot_ubuntu2

В окружении рабочего стола Gnome, все очень похоже на Unity, а в KDE нужно открыть главное меню, перейти на вкладку выход, и выбрать пункт перезагрузить:

reboot_kde

Затем подтвердить перезагрузку.

Перезагрузка Linux в терминале

А здесь уже простор намного шире, существует около десятка команд, которыми можно перезагрузить Linux. Одним нужны root привилегии, другим нет, одни выглядят просто и легко запоминаются, а другие длинные и сложные. Дальше мы рассмотрим их все.

Первая команда перезагрузки Linux, самая распространенная и самая простая:

Как видите, утилите нужны права суперпользователя. После нажатия Enter компьютер сразу уйдет в перезагрузку.

Утилита shutdown, которая используется для выключения тоже позволяет перезагрузить компьютер для этого нужно передать ей параметр -r. Плюс к тому же можно указать время перезагрузки. Сейчас — 0 или now, через одну минуту +1 через две — +2 и т д:

sudo shutdown -r +1

Перезагрузка Linux будет выполнена через минуту после ввода команды.

В системах инициализации совместимых с Init Scripts, существовали уровни загрузки системы — 0,1,2,3,4,5,6, уровень 0 — означал выключение, 6 перезагрузку, остальные режимы работы системы нас сейчас не интересуют. Переключаться между уровнями можно командой init. Только опять же нужны права суперпользователя. Таким образом:

Служба системных сообщений dbus тоже умеет перезагружать компьютер:

/usr/bin/dbus-send —system —print-reply —dest=»org.freedesktop.ConsoleKit» /org/freedesktop/ConsoleKit/Manager org.freedesktop.ConsoleKit.Manager.Restart

Тут уже не нужны права суперпользователя. Это были обычные способы перезагрузки Linux, но есть еще один, нестандартный или даже два. Это магические SysRq клавиши. Ядро Linux отслеживает нажатие определенных сочетаний клавиш, и в ответ на них выполняет нужные действия. Сначала включаем поддержку sysrq:

echo 1 > /proc/sys/kernel/sysrq

Лучше это сделать заблаговременно, так как этот способ полезен когда система зависла и ни на что не реагирует:

Для активации SysRq сочетания зажмите Alt + SysRq и нажмите код клавиши. Для нормальной перезагрузки рекомендуется использовать следующую последовательность: R E I S U B, клавиши нажимать в той же последовательности с интервалом приблизительно секунду.

  • R — возвращает управление клавиатурой если Х сервер был завершен некорректно;
  • E — ядро посылает всем процессам, кроме init сигнал SIGTERM;
  • I — отправляет всем процессам, кроме init сигнал SIGKILL;
  • S — ядро проводит синхронизацию файловых систем, все данные из кэша переносятся на жесткий диск;
  • U — перемонтирует все файловые системы в режим только чтение;
  • B — немедленная перезагрузка, без синхронизации, и дополнительных приготовлений.

Перед перезагрузкой система ожидает завершения всех процессов, останавливает все сервисы, отключает и монтирует в режиме только чтения файловые системы. Это мы и делаем, нажимая последовательно эти сочетания клавиш. Но если вам нужно перезагрузить систему сейчас не дожидаясь отключения всех процессов, например, сервер, можно сразу отправить сигнал B. Вот так: Alt + SysRq + B.

SysRq можно задействовать и без сочетаний клавиш, записав нужный код операции в файл /proc/sysrq-trigger:

echo b > /proc/sysrq-trigger

Система будет перезагружена как есть, без остановки сервисов и подготовки файловых систем, поэтому не сохраненные данные могут быть потеряны, а файловая система повреждена.

Удаленная перезагрузка Linux

Если у вас есть доступ к серверу по ssh то можно очень просто удаленно перезагрузить linux с помощью одной из выше приведенных команд, например:

ssh root@remote-server.com /sbin/reboot

Только опять же для этой операции нужно иметь права root на удаленном сервере.

Выводы

Теперь вы знаете как выполняется перезагрузка linux, вы даже знаете что делать когда система зависла и как перезагрузить сервер по ssh. Если у вас остались вопросы, спрашивайте в комментариях!

Перезапуск сети в Ubuntu

В Ubuntu и Debian инициализацией сетевых интерфейсов и настройкой сети занимается специальная сетевая служба — networking. Информация о конфигурации сетевых интерфейсов хранится в файле /etc/network/interfaces.

Если вы что-либо измените в этом файле, нужно будет перезапустить сеть, чтобы применить изменения. В этой статье мы рассмотрим как выполнить перезапуск сети Ubuntu 16.04.

Перезагрузка сети в Ubuntu

Можно, конечно, выполнить полную перезагрузку компьютера, но это не совсем удобно если можно просто перезапустить сеть Ubuntu. Для перезапуска сети используйте следующую команду:

sudo service networking restart

В современных дистрибутивах уже давным давно используется система инициализации Systemd, поэтому можно использовать команду systemctl вместо команды service:

sudo systemctl restart networking.service

Кроме того, можно перезапустить NetworkManager, это тоже помогает, если сеть настроена через него:

sudo systemctl restart NetworkManager

Перезапуск сети в NetworkManager

Чаще всего, для управления сетью в современных дистрибутивах используется программа Network Manager. Можно сразу же использовать ещё для наших целей. Просто отключите, а затем включите сеть обратно следующими командами:

sudo nmcli networking off

sudo nmcli networking on

После отключения сети значок NetworkManager пропадёт с панели, а потом снова появится после включения. Аналогично, вы можете использовать NetworkManager в графическом интерфейсе. Кликните по его иконке, выберите нужное сетевое подключение и нажмите Выключить:

Затем включите его обратно.

Команды ifup и ifdown

Эти команды работают на более низком уровне, они управляют непосредственно самими сетевым интерфейсами. Для перезапуска сети мы можем отключить все интерфейсы, а затем включить обратно:

Вы не увидите никаких изменений в графическом интерфейсе, но когда сетевой интерфейс будет отключён, вы не будете иметь доступа к интернету.

Выводы

Как видите, не всегда обязательно перезагружать компьютер после изменений настроек, в большинстве случаев достаточно перезапустить только нужный сервис. Надеюсь, эта информация была вам полезной.

Reboot a Server from Command Line?

enter image description here

How do I reboot a Ubuntu Server from the command line? sudo reboot now never seems to work for me. Because its a server, I don’t have a window manager installed, so I can’t do it from a GUI (which always seems to work). I’ve had the problem for years on different versions of the operating system. It happens in virtual machines and on real metal. The same problem exists with sudo shutdown now , too. I’ve lived with it in the past. The difference now is I don’t want to just hit the power button because I might lose data.

asked Dec 30, 2013 at 4:07

user207039 user207039

Have you tried sudo shutdown -r now ?

Dec 30, 2013 at 4:25

sudo reboot now is not a valid option. see man 8 reboot

Dec 30, 2013 at 4:31

Thanks souravc — that’s interesting. The command never complains about an invalid option. I’ll test some of these when I get out of mysql.

– user207039

Dec 30, 2013 at 4:45

sudo init 6 must always work. Also, there are Ctrl+Alt+Del and REISUB.

Выключение Linux из командной строки

Выключение компьютера — действие, с которым обычные пользователи сталкиваются чуть ли не каждый день. Если выключать сервер приходится довольно редко, то обычные, десктопные компьютеры подвержены этой операции очень даже часто. Большинство пользователей выключают linux в графическом интерфейсе системы. В окружении рабочего стола KDE это делается через главное меню, а в Gnome и Unity даже есть специальная кнопка на панели для решения этой задачи.

Но не всегда есть возможность выключить компьютер linux таким образом. Например, если окружение рабочего стола не работает, то больше ничего не остается, кроме того, чтобы выполнять выключение компьютера из командной строки. К тому же выключение компьютера linux через терминал единственно возможный способ для серверов, где нет графического интерфейса. Как вы увидите, этот способ также намного гибче обычного выключения, поскольку вы можете настроить нужное время отключения, или же выключить компьютер, дождавшись завершения работы определенной программы.

Процесс выключения Linux

Часто для выключения Linux из терминала используется утилита shutdown. Есть также команды poweroff, halt, но они для нестандартных случаев. Также выключить linux из консоли можно с помощью сочетаний клавиш SysRQ. Но сначала давайте рассмотрим синтаксис команды shutdown. Естественно, команда shutdown в Linux или любая другая не самостоятельно завершает работу системы и выключает компьютер. Она всего лишь передает запрос на выключение системе инициализации, а затем ядру. А уже они выполняют ряд сложных операций по подготовке и выключению компьютера. Если кратко, то вот они:

  • Завершение процессов пользователя.
  • Сигнал SIGTERM всем процессам.
  • Сигнал SIGKILL всем процессам.
  • Монтирование файловых систем в режиме только для чтения.
  • Подготовка внешних устройств к отключению.
  • Блокировка пространства пользователя, чтобы гарантировать, что ни один код пользователя больше не будет запущен.
  • Завершение работы и отключение питания большинства периферических устройств.
  • Отключение питания компьютера.

Теперь вы понимаете суть процесса выключения и то почему нельзя просто выдернуть шнур питания с розетки. Если это сделать, компьютер отключится моментально и не выполнит всех необходимых операций, а это может грозить потерей не сохраненных или даже недавно сохраненных данных, повреждением файловой системы и т д. Поэтому желательно выключать компьютер правильно с помощью shutdown или других специальных утилит.

Синтаксис и опции shutdown

Синтаксис команды очень простой:

$ shutdown [опции] [время] [сообщение]

Опции задают параметры отключения, их мы рассмотрим ниже. Время можно задавать в виде чч:мм в 24 часовом формате. Также можно использовать запись +минуты, указывающую через сколько минут от текущего момента нужно выключить компьютер с Linux. Также доступна константа now, указывающая, что выключать нужно прямо сейчас. Параметр сообщение позволяет задать сообщение, которое будет выведено в терминал перед выключением.

Вот основные опции утилиты:

  • —help — вывести справку по программе
  • -H, —halt — отключить питание, не завершая процессы и не перемонтируя файловые системы
  • -P, —poweroff — нормальное выключение
  • -r, —reboot — перезагрузка
  • -k — не выполнять реальных действий, а только вывести сообщение
  • —no-wall — выключить компьютер, но не выводить сообщение
  • -c — отменить запланированное выключение linux из командной строки

Вот в принципе и все опции утилиты, их больше чем достаточно для такого простого действия. Теперь можно переходить к примерам, но сначала давайте рассмотрим, что же происходит во время включения Linux.

Выключение компьютера в Linux

1. shutdown

Самая простая и самая часто используемая команда выключения компьютера linux, отключит компьютер немедленно:

sudo shutdown -h now

Как видите, используется обычное выключение, и константа времени now, тоесть сейчас.

Теперь попробуем запланировать выключение компьютера linux через пять минут:

sudo shutdown -h +5 «Компьютер будет выключен через 5 минут»

Мы запланировали вывод сообщения перед выключением. Чтобы отменить команду shutdown выполните:

sudo shutdown -c

Точно так же мы можем указать точное время выключения, например в девять вечера:

sudo shutdown -h 21:00

Как я уже говорил, не только команда shutdown linux умеет выключать компьютер, есть еще несколько утилит способных на это. Рассмотрим их тоже.

2. reboot

Команда reboot обычно используется для перезагрузки системы, но она также умеет выключать компьютер. Мы не будем ее подробно рассматривать, потому, что она еще проще команды shutdown. Для выключения нужно задать опцию -p:

3. halt

Эта команда тоже выключает компьютер. Только делает она это очень по-своему. Она не выполняет никаких подготовительных действий перед выключением, а просто отключает питание:

Использование halt может повредить систему

4. poweroff

Это аналог halt, делает в точности то же самое:

5. SysRQ

Помните, в начале статьи, я говорил о сочетании клавиш для включения компьютера? Рассмотрим этот вопрос подробнее.

SysRQ — это подсистема, реализованная на уровне ядра. Ядро обрабатывает все нажатия клавиш, а с помощью этой подсистемы, оно может принимать от пользователя команды, даже когда система полностью зависла. Основное предназначение этой подсистемы — работа с компьютером в проблемных ситуациях, например, если вы думаете что ваш компьютер заразил вирус, или компьютер завис и его нужно выключить. Для доступа к SysRq используются сочетания клавиш Alt+PrtScr+номер

Самое интересное, что мы можем выполнить безопасное выключение компьютера linux. Для этого зажмите клавиши Alt + PrtScr и поочередно нажимайте:

  • R — разблокировать клавиатуру;
  • E — послать всем процессам сигнал SIGTERM;
  • I — послать всем процессам сигнал SIGKILL;
  • S — перенести все данные из кеша файловых систем на диск;
  • U — перемонтировать файловые системы только для чтения;
  • B — перезагрузить.

Также вместо всего этого можно воспользоваться сочетанием клавиш Alt+PrtScr+O, в таком случае, вся процедура будет выполнена автоматически, эта команда поддерживается не всеми ядрами.

6. Графический интерфейс

Выключить компьютер в графическом интерфейсе ещё проще. Для этого кликните по иконке выключения в правом верхнем углу, а затем выберите Выключить/Завершить сеанс, затем Выключение.. и снова Выключить:

Выводы

Теперь вы знаете все что нужно, о том, как выключить Linux через терминал. Если вас застигнет врасплох ошибка или зависание компьютера, вы знаете что делать. Если остались вопросы — пишите в комментариях!

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *