2

Я использую рабочую станцию 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 качестве метода избавления от заставки из скрипта, что часто приводит к процессам зомби и другим беспорядкам. Как можно безопасно разблокировать заставку из скрипта / командной строки?

1 ответ1

3

Учитывая почти мономантическую направленность xscreensaver на безопасность, на что намекают ответы в jwz's xscreensaver FAQ и более подробно разъясняется в On Toolkits, я сильно сомневаюсь, что стоковая xscreensaver разблокируется без пароля любым способом, кроме принудительного уничтожения, которое вы используете в настоящее время. , Лучшим вариантом будет, вероятно, изменить исходный код, включив в него что-то вроде параметра «-forceunlock», и создать из него собственный двоичный файл.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .