Есть ли способ (взломать) для включения блокировки экрана, но НЕ для блокировки на закрытой крышке?

Вот именно то, что я хотел сделать: включите блокировку (Settings> Brightness and Lock), установите время ожидания (Lock screen after:), НО НЕ блокируйте экран (например, без запроса пароля), если я ' буду только закрывать (и, конечно, открывать) крышку.

Я не уверен, есть ли какой-нибудь твик / хак, чтобы можно было это сделать.

(Я всегда выхожу из-за стола, но моя машина всегда что-то делает, так что «Ничего не делай» при закрытой крышке, но немного раздражает, когда я набираю пароль 4 раза в час. Мне нужна крышка » но иногда я оставляю свой рабочий стол более чем на час и забываю Ctrl + Alt + L. Я хотел бы, чтобы он автоматически блокировался, как после часа бездействия. Если сценарии - единственный способ сделать это, можете Пожалуйста, помогите мне, с чего начать? Заранее спасибо.)

Ubuntu 12.04.02, LightDM, Gnome Shell

4
задан 26 April 2014 в 22:27

1 ответ

Хорошо, информации, предоставленной вами в комментариях, уже достаточно.

Во-первых, вы должны установить xprintidle (sudo apt-get install xprintidle), потому что мы собираемся попытаться эмулировать механизм блокировки!

Теперь напишите скрипт (я его называю screen-locker, обратите внимание, что вам не нужно добавлять расширение к вашему имени файла):

#!/bin/sh

export DISPLAY=:0.0

if /usr/bin/grep -q close /proc/acpi/button/lid/*/state ; then
  # the lid is closed, so nothing to do
  exit 0
fi

# The lid is open

# the idle time before locking is 60 minutes (60 times 60 times 1000 milliseconds)
lock_time_in_minutes=60

lock_time=$(( ${lock_time_in_minutes} * 60 * 1000 ))

if [ "`/usr/bin/xprintidle`" -ge "$lock_time" ] ; then
  /usr/bin/gnome-screensaver-command -l
fi

Допустим, вы сохранили его в каталоге с именем /home/your-username/bin. Сделайте его исполняемым

chmod 755 /home/your-username/bin/screen-locker

, теперь в терминале запустите

echo '*/10 * * * * /home/your-username/bin/screen-locker' | crontab

, чтобы добавить этот скрипт в ваш crontab. (При этом скрипт будет выполняться каждые 10 минут.)

Теперь вы можете перейти к Яркость и усиление. Заблокируйте и деактивируйте блокировку, потому что скрипт заблокирует ваш экран, если (и только если) крышка открыта.

(Вы можете изменить минуты 60 на 1 с целью быстрого теста. Вы ждете около 2 минут с открытой крышкой, чтобы увидеть, закрывается ли она, затем делаете то же самое ожидание, но с закрытой крышкой, чтобы посмотрите, не блокируется ли он).

0
ответ дан 26 April 2014 в 22:27

Другие вопросы по тегам:

Похожие вопросы: