Если Вы вводите history
в оболочке Вы будете видеть список недавних команд. Вы видите это к сценарию history > my_script
или что-то (или просто копируют его с ~/.bash_history файл).
Из my_script файла можно удалить ненужные команды, добавить строку хижины, обычно #!/bin/bash
, и сделайте это исполняемым файлом chmod +x my_script
и Вы сделаны.
Нет никакого различия в них. Внутренне они делают точно то же самое:
reboot
использование shutdown
команда (с переключателем-r). Команда завершения работы раньше уничтожила все рабочие процессы, размонтировала все файловые системы и наконец говорит ядру давать команду питания ACPI. Источник может быть найден здесь. В более старых дистрибутивах команда перезагрузки вынуждала процессы выйти путем издания SIGKILL
сигнал (все еще найденный в источниках, может быть вызван с -f
опция), в новых дистрибутивах это принимает значение по умолчанию к более корректной и init товарищеской встрече init 1 -> shutdown -r
. Это гарантирует, чтобы демоны вымылись перед завершением работы.
init 6
говорит init
обработайте для завершения работу всех порожденных процессов/демонов, как записано в init файлах (в обратном порядке, который они запустили), и наконец вызовите shutdown -r now
управляйте для перезагрузки машины
Сегодня нет большого различия, поскольку обе команды делают точно то же, и они уважают init сценарии, используемые для запуска сервисов/демонов путем вызова сценариев завершения работы для них. За исключением reboot -f -r now
как указано ниже
Существует маленькое объяснение, взятое из страниц справочника почему reboot -f
не безопасно:
-f, --force Force immediate halt, power-off, reboot. Don't contact the init system.
Править:
Забыл упоминать, в предстоящих дистрибутивах RHEL, необходимо использовать новое systemctl
управляйте для издания выключения питания/перезагрузки. Как указано в страницах справочника reboot
и shutdown
они - "команда прежней версии, доступная для совместимости только". и systemctl
метод будет единственным безопасным.
На традиционных нельдах, reboot
и shutdown -r now
весьма различные команды. При типичном использовании, reboot
только безопасно использовать в однопользовательском режиме.
shutdown -r now
канонический метод должен завершить работу через различный *nix's и более безопасный использовать в целом и функционально эквивалентен init 6
.
Во FreeBSD есть разница между reboot
и shutdown -r now
. Из руководства reboot
man page:
Обычно утилита shutdown(8) используется, когда системе необходимо остановлен или перезапущен, предоставляя пользователям заблаговременное предупреждение о предстоящей судьбе и чисто прекратить конкретные программы.
Завершение работы предпочтительнее, потому что оно позволяет указать причину для решительных действий - то, что вы всегда должны делать. Сообщение будет записано в журнал (а) для потомков. Например:
shutdown -r now 'Обновление ядра требует перезагрузки'
Вы также можете выполнить запланированную перезагрузку - указав что-то другое, кроме сейчас
в качестве времени перезагрузки:
shutdown -r 22:00 'Работа с утечкой памяти ядра'
Тогда ваши пользователи будут получать периодические напоминания о необходимости выйти по мере приближения времени - процесс будет более упорядоченный и профессиональный.
init 1 -> shutdown -r
? – deed02392 01.05.2017, 17:20