GNU/Linux >> Tutoriales Linux >  >> Linux

Linux:¿cómo ejecutar un script en el bloqueo/desbloqueo de la pantalla?

Me gustaría ejecutar un script si la sesión de Gnome está bloqueada y desbloqueada.
¿Hay alguna forma de interceptar esto y realizar ciertas acciones cuando el escritorio está bloqueado o desbloqueado?

Respuesta aceptada:

Gnome-screensaver emite algunas señales en dbus cuando sucede algo.

Aquí la documentación (con algunos ejemplos).

Podrías escribir un script que ejecute:

dbus-monitor --session "type='signal',interface='org.gnome.ScreenSaver'"

y eso hace lo que necesita en cualquier momento dbus-monitor imprime una línea sobre el bloqueo/desbloqueo de la pantalla.

Aquí un comando bash para hacer lo que necesitas:

dbus-monitor --session "type='signal',interface='org.gnome.ScreenSaver'" |
  while read x; do
    case "$x" in 
      *"boolean true"*) echo SCREEN_LOCKED;;
      *"boolean false"*) echo SCREEN_UNLOCKED;;  
    esac
  done

Simplemente reemplace echo SCREEN_LOCKED y echo SCREEN_UNLOCKED con lo que necesitas.


Linux
  1. Linux:¿cómo ejecutar un gestor de arranque desde Linux?

  2. Cómo bloquear y desbloquear usuarios en Linux

  3. ¿Cómo puedo ejecutar un script de Perl como un demonio del sistema en Linux?

  4. Cómo bloquear la pantalla con el teclado en Linux Mint (LXDE)

  5. ¿Cómo configurar PHP CLI en linux ubuntu para ejecutar como www-data?

Cómo usar la pantalla de Linux

Cómo ejecutar Windows 95 en Linux

Cómo ejecutar un script de Python en PHP

Cómo ejecutar Shell Script como servicio SystemD en Linux

Cómo ejecutar un script Bash

Linux:¿cómo ejecutar un script activado por una entrada de joystick?