Добавьте сообщение, которое будет Отображено Во время Завершения работы CentOS 6 и 7

При издании перезагрузки или завершения работы я вижу:

[kbrandt@ny-kbrandt01: ~] sudo reboot
[sudo] password for kbrandt:

Broadcast message from kbrandt@ny-kbrandt01.ds.stackexchange.com
    (/dev/pts/3) at 14:50 ...

The system is going down for reboot NOW!

Я вижу, что эта конкретная строка является частью двоичного файла:

[kbrandt@ny-kbrandt01: ~] strings /sbin/shutdown | grep NOW
The system is going down for power off NOW!
The system is going down for halt NOW!
The system is going down for maintenance NOW!
The system is going down for reboot NOW!

Но кто-либо знает, существует ли способ, которым я мог бы добавить сообщение напоминания для глушения хоста в нашей системе контроля, не изменяя двоичный файл?

3
задан 25 November 2014 в 16:56
3 ответа

A очень осторожное чтение shutdown (8) справочной страницы ( т.е. не первый раз, когда я смотрел и ничего не нашел) показывает, что пользовательское сообщение может быть предоставлено в командной строке.

Например:

# shutdown -r +15 "We're rebooting for unicorns. Silence monitoring please."
Shutdown scheduled for Tue 2014-11-25 10:17:53 EST, use 'shutdown -c' to cancel.
# 
Broadcast message from root@saurok (Tue 2014-11-25 10:02:53 EST):

We're rebooting for unicorns. Silence monitoring please.
The system is going down for reboot at Tue 2014-11-25 10:17:53 EST!

В этой заметке, если у вас есть EL7 в среде, Я рекомендую вам запланировать отключение на 1 минуту вперед, если вы хотите, чтобы это сообщение было видно, а не отключение «сейчас», поскольку по моему опыту пользователи могут выйти из системы до получения стены (из-за того, что systemd настолько чертовски быстр, чтобы выключение и запуск системы).

В этой связи, если вы хотите еще более быструю перезагрузку, настройте kexec перед перезагрузкой, чтобы пропустить утомительные от 1 до 15 минут самотестирования сервера на своем оборудовании ...

1
ответ дан 3 December 2019 в 07:01

Вы можете сделать сервис, который пишет на стену. Служба запустится и создаст файл «блокировки», а затем вы получите сообщение при перезагрузке или выключении (процесс, вероятно, отличается для CentOS 7, поскольку он использует systemd):

Скрипт (возможно, лучше):

[root@ny-kbrandt01 init.d]# cat reminder
#!/bin/bash
# chkconfig: 2345 99 01
# description: My test service

if [[ $1 == "start" ]]; then
        touch /var/lock/subsys/reminder
fi

if [[ $1 == "stop" || $1 == "halt" ]]; then
        wall "Please silence in bosun so Kyle doesn't turn into more of a nutbag"
fi

И не забудьте добавить его с помощью chkconfig:

[root@ny-kbrandt01 init.d]# chkconfig --add reminder

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

1
ответ дан 3 December 2019 в 07:01

man shutdown

NAME
   shutdown - bring the system down

SYNOPSIS
   shutdown [OPTION]...  TIME [MESSAGE]
0
ответ дан 3 December 2019 в 07:01

Теги

Похожие вопросы