Мне нужен сценарий для того, когда я нажимаю Ctrl + Высокий звук + L (Экран Lock), я заблокировал или закрыл весь usb и закрыл все свои сетевые интерфейсы как eth0
.
Когда я Разблокировал, все должно вернуться к нормальному. Я попробовал
echo suspend> / sys / bus / usb / devices / usb1 / power / level
.. но я не мог..
И также
dbus-monitor --session "type = 'signal', interface = 'org.gnome.ScreenSaver'
взаимодействовать с экраном, но могло не также.
Есть ли какой-либо лучший метод? Или что-то я могу учиться для создания этого сценария?
Согласно этот ответ на U& L, Вы попробовали устаревшее dbus
команда. Для 14,04 и, можно использовать:
dbus-monitor --session "type='signal',interface='com.ubuntu.Upstart0_6'" | \
(
while read X; do
if [[ "$X" =~ desktop-lock ]]; then
SCREEN_LOCKED;
elif [[ "$X" =~ desktop-unlock ]]; then
SCREEN_UNLOCKED;
fi
done
)
, который хорошо работает в моей системе (16.04).
(Спасибо за улучшения @Serg и @muru)
, Конечно, необходимо заменить SCREEN_LOCKED
и SCREEN_UNLOCKED
командами или сценариями, Вы хотите работать на изменениях в состоянии блокировки, но протестировали его, и оно хорошо работает.