I want to setup a cron job to lock my session every day at three PM. When I enter dbus-send --type=method_call --dest=org.gnome.ScreenSaver /org/gnome/ScreenSaver org.gnome.ScreenSaver.Lock in a terminal window, the session locks immediately, but when I do the same in crontab (even by using a BASH script) it didn't work.
I want to create a BASH script to lock the session using dbus-send and add it to crontab.
Asked
Active
Viewed 658 times
0
Pinguinim
- 1,498
1 Answers
0
Using loginctl to lock your desktop screen from crontab.
/opt/bin/lock-session.sh:
#!/bin/bash
crontab -e
min hour dom month dow command
0 15 * * * /bin/bash -c /opt/bin/lock-session.sh
Display (is the first value of Sessions).
Sessions (array of sessions).
property=Sessions
for session in $(loginctl show-user $USER -p $property --value); do
[[
$(loginctl show-session $session -p Desktop --value) ]] && loginctl lock-session $session
done
exit 0