- linux
- ВЫКЛЮЧЕНИЕ LINUX ИЗ КОМАНДНОЙ СТРОКИ
- СИНТАКСИС SHUTDOWN
- ПРОЦЕСС ВЫКЛЮЧЕНИЯ LINUX
- ВЫКЛЮЧЕНИЕ КОМПЬЮТЕРА В LINUX
- 1. SHUTDOWN
- 2. REBOOT
- 3. HALT
- 4. POWEROFF
- 5. SYSRQ
- Linux shutdown command
- Description
- Syntax
- Options
- Details
- Access Control
- Halting vs. Powering Off
- Files
- Examples
- Related commands
- Команда shutdown в Linux
- Синтаксис команды выключения
- Как использовать команду shutdown
- Как выключить систему в указанное время
- Как немедленно выключить систему
- Как транслировать собственное сообщение
- Как перезагрузить систему
- Как отменить запланированное выключение
- Выводы
linux
ВЫКЛЮЧЕНИЕ LINUX ИЗ КОМАНДНОЙ СТРОКИ
- Получить ссылку
- Электронная почта
- Другие приложения
Выключение компьютера — действие, с которым обычные пользователи сталкиваются чуть ли не каждый день. Если выключать сервер приходится довольно редко, то обычные, десктопные компьютеры подвержены этой операции очень даже часто. Большинство пользователей выключают linux в графическом интерфейсе системы. В окружении рабочего стола KDE это делается через главное меню, а в Gnome и Unity даже есть специальная кнопка на панели для решения этой задачи.
Но не всегда есть возможность выключить компьютер linux таким образом. Например, если окружение рабочего стола не работает, то больше ничего не остается, кроме того, чтобы выполнять выключение компьютера из командной строки. К тому же выключение компьютера linux через терминал единственно возможный способ для серверов, где нет графического интерфейса. Как вы увидите, этот способ также намного гибче обычного выключения, поскольку вы можете настроить нужное время отключения, или же выключить компьютер, дождавшись завершения работы определенной программы.
Чтобы выключить компьютер Linux используется команда shutdown. Есть также команды poweroff, halt, но они для нестандартных случаев. Обычно же хватает одной только shutdown. Также выключить linux из консоли можно с помощью сочетаний клавиш SysRq. Но сначала давайте рассмотрим синтаксис команды shutdown.
СИНТАКСИС SHUTDOWN
Синтаксис команды очень простой:
$ shutdown [опции] [время] [сообщение]
Опции задают параметры отключения, их мы рассмотрим ниже. Время можно задавать в формате чч:мм в 24 часовом формате. Также можно использовать запись +минуты, указывающую через сколько минут от текущего момента нужно выключить компьютер linux. Также доступна константа now, указывающая, что выключать нужно прямо сейчас.
Параметр сообщение позволяет задать сообщение, которое будет выведено в терминал перед выключением.
ПРОЦЕСС ВЫКЛЮЧЕНИЯ LINUX
Естественно, команда shutdown linux или любая другая не самостоятельно завершает работу системы и выключает компьютер. Она всего лишь передает запрос на выключение системе инициализации, а затем ядру. А уже они выполняют ряд сложных операций по подготовке и выключению компьютера. Если кратко, то вот они:
Завершение процессов пользователя
Сигнал SIGTERM всем процессам
Сигнал SIGKILL всем процессам
Монтирование файловых систем в режиме только для чтения
Подготовка внешних устройств к отключению
Блокировка пространства пользователя, чтобы гарантировать, что ни один код пользователя больше не будет запущен
Завершение работы и отключение питания большинства периферических устройств
Отключение питания компьютера
Теперь вы понимаете суть процесса выключения и то почему нельзя просто выдернуть шнур питания с розетки. Если это сделать, компьютер отключится моментально и не выполнит всех необходимых операций, а это может грозить потерей не сохраненных или даже недавно сохраненных данных, повреждением файловой системы и т д. Поэтому желательно выключать компьютер правильно с помощью shutdown или других специальных утилит.
А теперь перейдем к примерам.
ВЫКЛЮЧЕНИЕ КОМПЬЮТЕРА В LINUX
1. SHUTDOWN
Самая простая и самая часто используемая команда выключения компьютера linux, отключит компьютер немедленно:
sudo shutdown -h now
Как видите, используется обычное выключение, и константа времени now, тоесть сейчас.
Теперь попробуем запланировать выключение компьютера linux через пять минут:
sudo shutdown -h +5 «Компьютер будет выключен через 5 минут»
Мы запланировали вывод сообщения перед выключением.
Теперь давайте отменим выключение компьютера Linux:
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, в таком случае, вся процедура будет выполнена автоматически, эта команда поддерживается не всеми ядрами.
Источник
Linux shutdown command
On Unix-like operating systems, the shutdown command shuts down or reboots the system.
Description
The shutdown command brings the system down in a secure way. All logged-in users are notified that the system is going down, and login operations are blocked. It is possible to shut the system down immediately, or after a specified delay.
All processes are first notified that the system is going down by the signal SIGTERM. This gives programs like vi time to save the file being edited, mail and news processing programs a chance to exit cleanly, etc.
shutdown does its job by signalling the init process, asking it to change the runlevel. Runlevel 0 is used to halt the system, runlevel 6 is used to reboot the system, and runlevel 1 is used to put the system into a state where administrative tasks can be performed (single-user mode). Runlevel 1 is the default, unless the -h or -r options are specified.
Your system may have a different set of options for the shutdown command; check your documentation for details.
Syntax
Options
-a | Control access to the shutdown command using the control access file /etc/shutdown.allow. See Access Control below for more information. |
-k | Do not shut down, but send the warning messages as if the shutdown were real. |
-r | Reboot after shutdown. |
-h | Instructs the system to shut down and then halt. |
-P | Instructs the system to shut down and then power down. |
-H | If -h is also specified, this option instructs the system to drop into boot monitor on systems that support it. |
-f | Skip fsck after reboot. |
-F | Force fsck after reboot. |
-n | Don’t call init to do the shutdown of processes; instruct shutdown to do that itself. |
The use of this option is discouraged, and its results are not always predictable.
The time can be formatted in different ways:
First, it can be an absolute time in the format hh:mm, in which hh is the hour (1 or 2 digits, from 0 to 23) and mm is the minute of the hour (in two digits).
Second, it can be in the format +m, in which m is the number of minutes to wait.
Also, the word now is the same as specifying +0; it shuts the system down immediately.
Details
If a shutdown is scheduled for the future, it will create the advisory file /etc/nologin which causes programs such as login not to allow new user logins. This file is created five minutes before the shutdown sequence starts. shutdown removes this file if it is stopped before it can signal init (i.e. it is cancelled or something goes wrong). It also removes it before calling init to change the runlevel.
The -f flag means «reboot fast». This only creates an advisory file /fastboot which can be tested by the system when it comes up again. The system boot rc file («rc» stands for «runcom», which is short for «run commands») can test if this file is present, and decide not to run fsck since the system has been shut down in the proper way. After that, the boot process should remove /fastboot.
The -F flag means «force fsck«. This only creates an advisory file /forcefsck which can be tested by the system when it comes up again. The boot rc file can test if this file is present, and decide to run fsck with a special «force» flag so that even properly unmounted file systems get checked. After that, the boot process should remove /forcefsck.
The -n flag causes shutdown not to call init, but to kill all running processes itself. shutdown will then turn off quota, accounting, and swapping and unmount all file systems.
Access Control
shutdown can be called from init when the Ctrl+Alt+Del key combination is pressed, if there exists an appropriate entry in /etc/inittab. This would mean that everyone who has physical access to the console keyboard can shut the system down, however.
To prevent this, shutdown can check to see if an authorized user is logged in. If shutdown is called with the -a argument (add this to the invocation of shutdown in /etc/inittab), it checks to see if the file /etc/shutdown.allow is present. It then compares the login names in that file with the list of people that are logged in on a virtual console (from /var/run/utmp). Only if one of those authorized users or root is logged in, it will proceed. Otherwise, it will write the message
. to the (physical) system console. The format of /etc/shutdown.allow is one username per line. Empty lines and comment lines (prefixed by a #) are allowed. Currently there is a limit of 32 users in this file.
Note that if /etc/shutdown.allow is not present, the -a argument is ignored.
Halting vs. Powering Off
The -H option just sets the init environment variable INIT_HALT to HALT, and the -P option just sets that variable to POWEROFF. The shutdown script that calls halt as the last thing in the shutdown sequence should check these environment variables and call halt with the right options for these options to actually have any effect.
Files
/fastboot
/etc/inittab
/etc/init.d/halt
/etc/init.d/reboot
/etc/shutdown.allow
Examples
Schedule the system to shut down at 8 A.M.
Schedule the system to shut down at 8 P.M.
Schedule the system to shut down in fifteen minutes. Along with the normal message alerting users that the system is shutting down, they will be given the descriptive message about a hardware upgrade.
Bring down the system immediately.
Bring down the system immediately, and automatically reboot it.
Bring down the system immediately, and automatically power off the system.
Related commands
halt — Stop the computer.
poweroff — Stop the computer.
reboot — Stop the computer.
wall — Send a message to all logged-in users.
Источник
Команда shutdown в Linux
В этом руководстве мы покажем вам, как использовать команду shutdown на практических примерах и подробных объяснениях наиболее распространенных параметров shutdown .
Команда shutdown систему. Когда завершение shutdown инициируется, все вошедшие в систему пользователи и процессы уведомляются о том, что система выходит из строя, и дальнейшие входы в систему запрещены. Вы можете выключить вашу систему немедленно или в указанное время.
Синтаксис команды выключения
Прежде чем перейти к использованию команды shutdown , давайте начнем с обзора основного синтаксиса.
Выражения команды shutdown имеют следующую форму:
- options — options завершения работы, такие как остановка, отключение питания (параметр по умолчанию) или перезагрузка системы.
- time — аргумент времени указывает, когда выполнять процесс выключения.
- message — Аргумент сообщения определяет сообщение, которое будет транслироваться всем пользователям.
В последних дистрибутивах Linux systemctl shutdown является псевдонимом systemctl и доступна в системе только из соображений совместимости.
Как использовать команду shutdown
Только root и пользователи с привилегиями sudo могут использовать команду crontab .
При использовании без аргументов команда shutdown выключит машину.
Процесс выключения начинается через 1 минуту, что является временным интервалом по умолчанию.
Как выключить систему в указанное время
Аргумент времени может иметь два разных формата. Это может быть абсолютное время в формате hh:mm и относительное время в формате +m где m — количество минут с текущего момента.
В следующем примере будет запланировано выключение системы на 11:00:
В следующем примере будет запланировано shutdown системы через 10 минут:
Как немедленно выключить систему
Чтобы выключить систему сразу же можно использовать +0 или его псевдоним в now :
Как транслировать собственное сообщение
Чтобы транслировать настраиваемое сообщение вместе со стандартным уведомлением о shutdown введите сообщение после аргумента времени.
В следующем примере система будет отключена через 30 минут и уведомлена пользователей о том, что будет выполнено обновление оборудования:
Важно отметить, что при указании настраиваемого сообщения на стене вы также должны указать аргумент времени.
Как перезагрузить систему
Чтобы перезагрузить систему, используйте аргумент -r :
Вы также можете указать аргумент времени и собственное сообщение:
Приведенная выше команда перезагрузит систему через 5 минут и транслирует Updating kernel .
Как отменить запланированное выключение
Если вы запланировали выключение и хотите отменить его, вы можете использовать аргумент -c :
При отмене запланированного завершения работы вы не можете указать аргумент времени, но вы все равно можете транслировать сообщение, которое будет отправлено всем пользователям.
Выводы
Команда shutdown позволяет вам остановить, выключить и перезагрузить вашу систему Linux.
Чтобы узнать больше о shutdown , посетите страницу руководства по завершению работы .
Если у вас есть какие-либо вопросы или отзывы, не стесняйтесь оставлять комментарии.
Источник