
Digamos que estoy fuera de casa, haciendo ssh en la computadora de mi casa. Por alguna razón, necesito reiniciarlo.
# shutdown -r +10
Esto envía un mensaje de advertencia cada minuto a través dewall
, que es completamente invisible para el uso normal de escritorio por parte de, por ejemplo, mis padres.
¿Existe alguna forma de que wall
los mensajes lleguen al escritorio mediante, por ejemplo, una notificación?
Respuesta1
Las partes internas de wall
y están tan bloqueadas y son tan antiguas que realmente no hay forma de extraer el mensaje una vez que está allí.
La única idea real propuesta para esto (el problema ha sido discutido antes, muchas veces) es alterar los scripts shutdown
y reboot
para que hagan que algo esté disponible a través de dbus o (ya que solo estamos tratando con una computadora y una solución) simplemente puede hacer que envíe un mensaje de notificación y envío.
Ellossonsolo scripts para que puedas hackearlos. Pero creo que esta es probablemente una causa por la que vale la pena impulsar. Envíe un error contra Ubuntu y agregue sus parches (solo asegúrese de que puedan funcionar sin necesidad de enviar la notificación si no hay un entorno X). Es este tipo de usabilidad lo que necesitamos.
Nunca había oído hablar de él gxmessage
antes, pero lo usaría notify-send
.
Una solución completa necesitaría atender la posibilidad de múltiples pantallas (por ejemplo, múltiples cabezales, usuarios remotos, etc.), pero afortunadamente ayer escribí algo de código para esa parte:
for display in `ps aux | grep -oE "/usr/bin/X\s[^ ]+" | cut -d " " -f 2`; do
DISPLAY=$display notify-send -u critical 'Shutdown notice' 'Save all your work. THE SYSTEM IS GOING DOWN!!' -i /usr/share/pixmaps/gnome-computer.png
done
(Estoy usando exportar en lugar de una bandera -display
o --display
porque tampoco sé qué notify-send
se necesita)
Respuesta2
Puedes enviar un mensaje manualmente usando zenity
zenity --warning --text "badp's about to restart the computer" --display=:0
Por supuesto, puedes incluir esto en un guión.
Respuesta3
AFAIK, no existe un cliente X para que el comando wall muestre estos mensajes en un entorno gráfico. Puedes usarmensajegxaplicación para mostrar ventanas emergentes, pero luego tendrás que escribir el script tú mismo.
Respuesta4
En mi sistema, con KDE Plasma 5.27.10 en Wayland,wall
hacetrabajar. Puedo enviar wall
un mensaje por ssh y se mostrará una notificación entodoinstancias de plasma. (Si cambio de usuario y luego envío el mensaje, lo veré en el usuario actual, luego, si vuelvo a cambiar, lo veré allí, con la marca de tiempo adecuada). También indica qué usuario envió el mensaje.
GNOME Shell 45.3 en Waylandno esmensajes de apoyo wall
.
Recomiendo ejecutar los comandos w
o who
para determinar si están en GNOME u otro DE que no sea compatible wall
correctamente.