Debian 9.3 Xfce ディスプレイのスリープ復帰問題 (Linux自作PC 17)
当サイトではアフィリエイト広告を利用しています
Debian 9.3 Stretch XfceでGPU挿入で発生した、ディスプレイのスリープ復帰問題へ対処を行います。
今回はGPU設置に伴って生じた、電源管理の問題へ対処します。
前回にGPUとオンボードのメイン出力切り替えを行った続きです。
問題の概要
GPUの設置は正常に行えて動作確認も出来ましたがディスプレイのスリープ復帰時に問題が発生しました。復帰が正常に行われずに、入力コンソールだけでて点滅して何も受け付けなかったり、ログだけが点滅出力されて何も入力出来なくなっていたりしています。
ただ、sshでリモートログインはできる状態ではあります。GPU出力、オンボード出力両方共で発生していますが、GPU設置前には発生していませんでした。GPU関連のドライバの問題でしょうか。
Xfce設定の確認
設定を確認したところ、使用しているウィンドウマネージャーのXfceではデフォルトでスクリーンセーバーは入っていない模様で、電源管理でシステムのスリープモードは「しない」に設定してありました。
ディスプレイの電源管理において、ブランク画面、スリープ、電源を切断する時間をそれぞれ設定可能で10分、10分、15分となっていましたた。これが原因なのでしょうか。
ひとまず「Automatically Lock the session」をOffにして、スリープ状態へ遷移中は画面をロックするとしてもディスプレイはスリープ状態に。やはりここから復帰はできませんでした。
次に「ディスプレイの電源管理を行う」をOffにしましたが、この状態でもブランク画面への移行時間だけは有効となっており、ディスプレイが自動スリープされて復帰は相変わらずできませんでした。
Xserverコマンドの実行
ここで、Xserver周りのコマンドを使ってみます。 Ctrl+Alt+F1のGUI→CUI切り替えは反応し、CUIに画面が切り替わりました。
この状態から、Alt+F7のCUI→GUI切り替えを行うと、 「このセッションはロックされています、数秒後に自動的にロック解除ダイアログにリダイレクトします」 と表示され、数秒後に何も映らなくなりました。 どうやらこの遷移がうまくいっていない模様です。 ここからまたCtrl+Alt+F1でCUIに戻ることはできました。
この状態で、lightdmを再起動後、Alt+F7を使ってみました。
$ sudo stop lightdm
$ sudo start lightdm
再び先のロック表示とブランク遷移が表示されるのは変わらないです。
こうなってしまうとCUIに切り替えてpoweroffするしか対処できません。
この遷移が問題となるのであればXfceに固有の問題の可能性もあります。 そんな訳で一度別のウィンドウマネージャーを試してみることにしました。
ウィンドウマネージャーの変更
選択肢はいろいろありますが、比較的軽量なMateを使ってみることにします。
$ sudo apt instal task-mate-desktop
デフォルトのDisplay Managerはlightdmをxfceから引き続き使用しました。 gdm3にも変えられるるみたいなので、問題解決しなかったらそちらを使おうと思います。 セッション周りの問題なら原因lightdmかもしれないですから。
再起動後、login画面右上のアイコンからMateに切り替えられるようになりました。
Mateで電源管理の確認
スクリーンセーバーでアイドルまでの時間を指定します。 アイドルになったらスクリーンセーバー起動し、画面ロックとして、これらの標準設定で動作の確認をします。
時間経過でスクリーンセーバーの起動を確認し、その状態からマウス操作で解除、ロック解除画面へ正常に移動しました。
また、電源管理→AC電源使用時の挙動→ディスプレイ設定から、アイドル時間が続いたら画面をスリープを有効にしてみました。この時間はスクリーンセーバー移行時間より大きくしておかないといけないみたいです。
Xfceではできなかった画面復帰が正常に行えてました。 どうやらXfce固有の問題であったようです。本環境ではウィンドウマネージャーはMateを使うことにします。
Xfceの削除
xfceのユーティリティが残っていて設定時に混乱しがちなのでいっそのこと削除することにします。
$ sudo apt remove task-xfce-desktop
$ sudo apt remove xfce4* libxfce4*
$ sudo apt autoremove
参考
以下が参考にしたページです。
今後
これでGPU設置に伴う問題への対処は終わりました。次はGPGPU稼働中のリソース監視に関する設定を行います。