web-dev-qa-db-ja.com

コマンドラインから新しいロック画面を使用して画面をロックするにはどうすればよいですか?

Ubuntu 14.04では、ログイン画面に似た 新しいロック画面 が導入されています。

New lockscreen

私はまだコマンドgnome-screensaver-command --lockを使用して画面をロックできます(以前と同じように)。これは14.04で画面をロックしますが、

  • デスクトップから実行している場合、新しいロック画面を使用して画面をロックします。
  • 仮想コンソールまたはSSH経由で実行している場合、old lockscreenを使用して画面をロックします。

xdg-screensaver lockを使用してみましたが、gnome-screensaver-command --lockと同じように機能します(デスクトップから実行されたときにのみ新しいロック画面を使用します)。

light-locker-command --lockがインストールされていないため、light-lockerの実行は機能しませんでした。

デスクトップから同じコマンドを実行することと、SSH /仮想コンソールを介して実行することにはいくつかの違いがあるはずですが、環境変数の違いを見つけることができませんでした。

だから、私の質問は:コマンドラインから古いロック画面ではなく、新しいUnityロック画面を使用して画面をロックするにはどうすればよいですか?

この質問 は、使用する必要がある新しいコマンドを要求するため、おそらく関連しているので、別の質問があります:同じロックコマンドを実行すると異なる結果が得られるのはなぜですか?

このバグレポート によると、gnome-screensaverは14.04ではもう使用されていないことに注意してください。

これは実際にはgnome-screensaverのバグではなく、そのコンポーネントは信頼できる状態で使用されなくなりました。

19
Léo Lam

gnome-screensaverがインストールされていません。動作するコマンドは次のとおりです。

dbus-send --type=method_call --dest=org.gnome.ScreenSaver /org/gnome/ScreenSaver org.gnome.ScreenSaver.Lock
14
Aibara

ロックスクリーンは団結パネルに関連するが、org.gnome.ScreenSaverは明らかにGnome関連のスキーマであるという点を除いて、受け入れられた答えには正しい考えがあります。

ただし、Unity用のdbusインターフェイスが存在し、必要なのはこのメソッドcom.canonical.Unity.Session.Lockを呼び出すことだけです

qdbus com.canonical.Unity  /com/canonical/Unity/Session com.canonical.Unity.Session.Lock

サイドノート

ユニティパネルに関連していることの証明は簡単です。画面をロックすると、プロセス/usr/lib/unity/unity-panel-serviceはtty1から見た/usr/lib/unity/unity-panel-service --lock-modeに変わります。

3

私は最近、xdg-screensaver lockも同様に機能し、非常に簡単なソリューションであることがわかりました!

2
Paulius Šukys

キーストロークはいつでも送信できます:xdotool key super+l

1
wieczorek1990