Я использую рабочую станцию Linux (RHEL6). У меня есть небольшой сценарий, который я написал, который блокирует и разблокирует экран через xscreensaver при подключении или отключении флэш-накопителя USB, что фактически превращает его в физический ключ к моей рабочей станции. Проблема в том, что нет хорошего способа разблокировать xscreensaver из командной строки. xscreensaver-command -deactivate
, нелогично, только "имитирует активность пользователя" и все еще требует пароль для разблокировки экрана. xscreensaver-command -exit
убивает только родительский демон xscreensaver
если не работает хранитель экрана. Поскольку страница man для xscreensaver-command -exit
предупреждает,
Warning: never use kill -9 with xscreensaver while the screensaver is active. If you are using a virtual root window manager,
that can leave things in an inconsistent state, and you may need to restart your window manager to repair the damage.
Действительно, в настоящее время я использую pkill xscreensaver
качестве метода избавления от заставки из скрипта, что часто приводит к процессам зомби и другим беспорядкам. Как можно безопасно разблокировать заставку из скрипта / командной строки?