まず第一に、GNOMEの同様の質問がここで尋ねられていることを知っています: "画面をロックするときにラップトップのバックライトをオフにする" 。
省電力の理由から、セッションのロック時に画面をオフにします。
Kubuntu(KDE)で画面をロックすると、必然的にスクリーンセーバーがトリガーされます。 「ブランク画面」以外のスクリーンセーバーオプションはありません。背景色は黒に設定されており、目標に近づいています。画面をブランクにしますが、画面をオフにしません。画面のバックライトは引き続き点灯し、電力を節約しません。
スクリプト+ショートカットキーによる回避策は可能ですが、セッションをロックするすべての方法でトリガーされるわけではないため、単なる回避策です。したがって、たとえば、スクリーンセーバーのKDEの設定ダイアログでこのオプションを提供することにより、よりエレガントに行うことができるはずだと思います。
現在使用している回避策は次のとおりです。画面をロックして画面をオフにするスクリプト:
#!/bin/bash
qdbus org.freedesktop.ScreenSaver /ScreenSaver Lock
xset dpms force standby
カスタムメニューエントリを介してショートカットキーで実行します。できます。
これがソリューションではなく回避策であると考える理由は次のとおりです。 セッションのロックをトリガーする他の方法では機能しません。
KDEのソースに触れたりパッチを当てたりする必要がありますか?
Kubuntu 12.04を使用していますが、KDE 4.9にアップグレードするか、12.10リリースを待っています。
KDE 4(Ubuntu 14.10まで)の方法を見つけました。KDE5については他の回答を参照してください。
システム設定→アプリケーションおよびシステム通知→通知の管理に移動します。
スクリーンソースをイベントソースとして選択します
Screen Lockedを見つけて選択します
このコマンドをイベントに追加します。
xset dpms force off
ロックされるたびにすべてのディスプレイがオフになります。
確認済み:コマンドを実行する:/bin/sleep 1 ; /usr/bin/xset dpms force off
画面ロック通知内でPlasmashell 5.10で動作します。
移動:システム設定>通知>イベントソース「スクリーンセーバー」:
KDE 5の時点では、ほとんどのソリューションは動作していません。
(2016-09-28現在)動作していることがわかったので、テキストドキュメントを作成し、その中に次のコードをコピーして貼り付けます。
#!/bin/sh
sleep 0.5
loginctl lock-session
xset dpms force off
「KDE5lockscreenanddpms.sh」という名前で保存します。名前は重要ではありません。末尾に.shがあることを確認してください。次に、ファイルマネージャーで保存した場所に移動し、右クリックして[プロパティ]> [権限]を開き、実行可能にします。
これをクリックすると、画面がロックされるスクリプトが実行され、0.5秒後にモニターがオフになります。
これらのコマンドに関する情報を含む投稿があります。
考えられる解決策の1つは、 xscreensaver に切り替えることです。マニュアルページには実際に説明が付いています。
以下は概要です
KDEスクリーンセーバーを無効にします
xscreensaverのインストール
Sudo apt-get install xscreensaver
Create ~/.kde/Autostart/xscreensaver.desktop
次の行を追加します
[Desktop Entry]
Exec=xscreensaver
Name=XScreenSaver
Type=Application
X-KDE-StartupNotify=false
KDEロック画面を置き換える
cd /usr/lib/kde4/libexec
Sudo mv kscreenlocker kscreenlocker.original
Sudo vim kscreenlocker
次の行をkscreenlocker
に追加します
#!/bin/sh
xscreensaver-command -lock
xscreensaver-demo
を使用してdpmsを構成します(Sudoなし)
Advance
タブでDPMSを構成します。最小スタンバイは1分です。
ただし、最初の構成後に~/.xscreensaver
を編集することで、より少なくすることができます。ファイルでdpmsStandby:
を探します。
dpmsStandby:
が0:00:00に変更された場合に動作するかどうかはわかりません。 VMを使用してテストしていますが、黒い画面は同じように見えます。