"Se requiere reinicio del sistema" ... ¿por qué? ¿Cómo puedo obtener lo que activó esta notificación para que también muestre detalles?

21

De vez en cuando, voy a SSH en una caja con actualizaciones desatendidas y me saludan con "** Requiere reinicio del sistema ***" sin información adicional.

Mi archivo '/var/run/reboot-required.pkgs' contiene:

linux-image-3.13.0-61-generic
linux-base
linux-base
linux-base

No me importa reiniciar, pero no me gusta reiniciar sin tener los detalles de POR QUÉ debo reiniciar en primer lugar. Arriba, veo dos paquetes que activaron el mensaje, pero no hay explicación más allá de eso.

¿Hay alguna forma de obtener detalles adicionales sobre el motivo del reinicio para que también aparezca en el inicio de sesión de SSH?

Idealmente, me gustaría obtener un archivo que contenga algo que pueda leerse por los humanos, como por ejemplo, "El paquete xyz se actualizó a las [fecha / hora]. Necesitaba modificar los archivos a, b y c, pero no pudo porque el sistema bloqueado / bloquearía la acción. Durante el próximo reinicio, los archivos a, b y c serán reemplazados ". Pero algo que no es completamente legible por humanos probablemente también esté bien.

    
pregunta E. Diaz 13.08.2015 - 18:51

2 respuestas

24

Editar: Otro artículo probablemente relevante o útil.

Como ya descubrió, puede encontrar los paquetes que requieren un reinicio en /var/run/reboot-required.pkgs

Ahora solo necesita buscar en el registro de cambios del paquete para encontrar la información que está buscando.

  • Si ya está en la máquina, puede encontrar los registros de cambios en /usr/share/doc/${package_name} (ejemplo: zless /usr/share/doc/linux-image-3.13.0-61-generic/changelog.Debian.gz ).
  • Debian proporciona algunas herramientas como apt-listchanges para hacer esto más conveniente ( 1 , 2 , < a href="https://www.debian.org/doc/manuals/debian-reference/ch02.en.html#_safeguarding_for_package_problems" title="Referencia de Debian: protección de problemas del paquete"> 3 ).
  • Otra forma de hacerlo sería usar packages.ubuntu.com .

    En tu caso:

respondido por el LiveWireBT 09.09.2015 - 09:08
1

El último archivo llamado es /usr/lib/update-notifier/update-motd-reboot-required (se llama por /etc/update-motd.d/98-reboot-required ).

Dentro de la declaración if condicional de uno de esos archivos, simplemente agregue esto:

    echo "Packages causing reboot:"
    cat /var/run/reboot-required.pkgs

Entonces, por ejemplo, su archivo /usr/lib/update-notifier/update-motd-reboot-required se vería así:

#!/bin/sh -e
#
# helper for update-motd

if [ -f /var/run/reboot-required ]; then
        cat /var/run/reboot-required
        echo "Packages causing reboot:"
        cat /var/run/reboot-required.pkgs
fi
    
respondido por el Berto 01.06.2017 - 12:51

Lea otras preguntas en las etiquetas