Ctrl-Alt-Delete по умолчанию shutdown -r
функциональность в системах Linux опасная функция?
Несколько лет назад, когда я развернул физические системы с приложенными клавиатурами и мониторами, я буду иногда изменять /etc/inittab
в системах Red Hat для отключения прерывания перезагрузки. Это обычно происходило после того, как локальный человек IT или администратор Windows случайно использовали волшебное сочетание клавиш на неправильном терминале/клавиатуре/окне и перезагрузили их сервер.
# Trap CTRL-ALT-DELETE
ca::ctrlaltdel:/sbin/shutdown -t3 -r now
Я не сделал этого со дней RHEL4, но более новые системы, кажется, имеют a /etc/init/control-alt-delete.conf
файл для этого.
В годах с тех пор, большинство моих систем было развернуто бездисплейное или работает как виртуальные машины. Это уменьшило частоту непреднамеренных перезагрузок... однако, у меня был недавний набор ctrl-alt-delete oopses от:
1). IP KVM включил неправильный сервер штатом центра обработки данных.
2). администратор Windows, использующий сочетание клавиш в консоли VMware, думая, это было необходимо для входа в систему.
3). меня использующий макрос ctrl-alt-delete в консоли HP ILO для перезагрузки живой CD..., но это был на самом деле МОТ для очень занятого рабочего сервера.
Править: На самом деле я просто встретился с этим сервером, виртуальная машина, работающая в течение 1 115 дней, неизвестный пароль root, и инструменты VMware, не была установлена (таким образом, Ctrl-Alt-Delete будет единственной корректной опцией завершения работы).
Это может быть полезно для очень, очень редко трогаемых станков. Спустя годы после установки, если никто не помнит логин для хоста, Ctrl-Alt-Delete сделает правильное завершение работы, а затем позволит вам использовать GRUB (или даже LiLo!) для питания ядра rw init=/bin/bash
и, таким образом, даст вам возможность сбросить корневой пароль.
Вышеизложенное также является способом, при котором Ctrl-Alt-Delete опасен, даже если физический доступ к переключателям питания/сброса и кабелям электропитания невозможен. Пароль системного загрузчика (и пароль BIOS плюс отключение загрузки с USB/CD-ROM и ключа загрузочного меню) может предотвратить это, но затрудняет легитимное аварийное восстановление.
Если у вас есть ILO/IPMI/.... Это имеет абсолютный смысл. Единственной причиной CTRLALTDEL была волшебная ловушка, когда больше ничто не будет прерываться. С контрольной картой вам это не нужно - вы можете перезагрузить машину в любом случае. Нет необходимости говорить, что если машина ведет себя корректно, вы всегда можете 'перезагрузить' /'выключить -r now'/'init 6'/'systemctl reboot' из консоли или gui.
.Я считаю, что шансы случайной перезагрузки через ctrl-alt-delete намного выше, чем шансы того, что корневой пароль сервера будет забыт, и поэтому в производственных средах имеет смысл отключить ctrl-alt-delete. Лично я делаю это в своих производственных системах.
Шансы на то, что жесткий цикл питания на работающем хосте linux вызовет неустранимое повреждение данных, невелики. За сотни раз, которые я делал это на протяжении многих лет, я не могу вспомнить ни одного случая, когда система не могла бы исправить себя (fsck) при загрузке. Поэтому я считаю это правильным вариантом на тех хостах, где пароль root неизвестен, исключая возможность использования других методов для плавного завершения работы.