Agregue un mensaje que se mostrará durante el apagado de CentOS 6 y 7

Agregue un mensaje que se mostrará durante el apagado de CentOS 6 y 7

Al reiniciar o apagar veo:

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

Broadcast message from [email protected]
    (/dev/pts/3) at 14:50 ...

The system is going down for reboot NOW!

Puedo ver que esta cadena en particular es parte del binario:

[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!

¿Pero alguien sabe si hay alguna manera de agregar un mensaje recordatorio para silenciar el host en nuestro sistema de monitoreo sin modificar el binario?

Respuesta1

Amuy cuidadosoLa lectura de la shutdown(8)página de manual (es decir, no las primeras veces que miré y no encontré nada) revela que se puede proporcionar un mensaje personalizado en la línea de comando.

Por ejemplo:

# 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!

En ese sentido, si tiene EL7 en el entorno, le recomiendo que programe sus apagados con 1 minuto de anticipación, si desea que se vea este mensaje, en lugar de apagar "ahora", ya que, en mi experiencia, los usuarios pueden cerrar sesión antes. recibir la pared (debido a que systemd es tan rápido para apagar e iniciar el sistema).

En ese sentido, si desea reinicios aún más rápidos, configure kexec antes de reiniciar, para saltarse los aburridos 1 a 15 minutos en los que el servidor prueba automáticamente su hardware...

Respuesta2

Puedes crear un servicio que escriba en la pared. El servicio se iniciará y creará el archivo de "bloqueo", y luego recibirá el mensaje al reiniciar o apagar (el proceso probablemente sea diferente para CentOS 7 ya que usa systemd):

Guión (probablemente podría ser mejor):

[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

Y asegúrese de agregarlo con chkconfig:

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

El problema es que esta versión no escala tan bien al tener "silencio automático" porque no nos gustaría hacer eso para reinicios no iniciados por administradores.

Respuesta3

man shutdown

NAME
   shutdown - bring the system down

SYNOPSIS
   shutdown [OPTION]...  TIME [MESSAGE]

información relacionada