Suspender da linha de comando e mostrar a tela de bloqueio do Unity em 14.04?

4

Como posso suspender meu computador a partir da linha de comando e, quando ele acordar, exibir a tela de bloqueio do Unity? Eu quero replicar exatamente o que acontece quando eu clico no ícone do cog do sistema no canto superior direito do painel do Unity e vou para Suspend no Ubuntu 14.04 ( não anterior versão!).

Eu encontrei muitas respostas que não funcionam, como as encontradas aqui e aqui . Todos eles são para versões mais antigas do Ubuntu ou invocam o gnome-screensaver ou a tela de bloqueio do xscreensaver.

Esse comando, por exemplo, suspende o computador, mas não bloqueia a tela: dbus-send --system --print-reply --dest=org.freedesktop.UPower /org/freedesktop/UPower org.freedesktop.UPower.Suspend , apesar de Require my password when waking from suspend ter sido verificado nas configurações de Brightness & Lock system .

Na verdade, eu nem sei como invocar a tela de bloqueio do Unity em 14.04: o mais próximo que eu posso chegar é dm-tools lock , mas isso não é o mesmo, pois permite que você faça login como um usuário diferente e mostra mais indicadores.

    
por Aibara Iduas 01.07.2014 / 04:05

1 resposta

6

Desde que eu descobri como obter a tela de bloqueio 14.04, eu apenas encadeei o comando dbus lock com o comando suspender:

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"
    
por Aibara Iduas 14.07.2014 / 20:01