Как я могу вывести компьютер из командной строки и, как только он проснется, отобразить экран блокировки Unity? Я хочу повторить точно , что происходит, когда я нажимаю на значок системной шестерни в правом верхнем углу панели Unity и перехожу к Suspend
в Ubuntu 14.04 ( не более ранняя версия!) ).
Я нашел много ответов, которые не работают, такие как найденные здесь и здесь . Все они предназначены для более старых версий Ubuntu или используют либо gnome-screensaver, либо экран блокировки xscreensaver.
Эта команда, например, приостанавливает работу компьютера, но не блокирует экран: dbus-send --system --print-reply --dest=org.freedesktop.UPower /org/freedesktop/UPower org.freedesktop.UPower.Suspend
, несмотря на то, что Require my password when waking from suspend
проверяется в настройках Brightness & Lock system
.
На самом деле, я даже не знаю, как вызвать экран блокировки Unity в 14.04: самое близкое, к чему я могу прийти, это dm-tools lock
, но это не совсем то же самое, так как позволяет подписывать в качестве другого пользователя и показывает больше показателей.
Так как я выяснил, как получить 14,04 экранов блокировки, я просто объединил команду блокировки dbus в цепочку с приостанавливанием того:
sh -c "dbus-send --type=method_call --dest=org.gnome.ScreenSaver /org/gnome/ScreenSaver org.gnome.ScreenSaver.Lock && dbus-send --system --print-reply --dest=org.freedesktop.UPower /org/freedesktop/UPower org.freedesktop.UPower.Suspend"