debian10の初見20分サスペンド殺し問題

Linux界隈がCentOSとUbuntuに収束しようとしている・・・。
もはや誰もRHELとか使ってないんじゃないのかな?

久しぶりに仮想環境ではない実機にLinuxを新規にインストールしてみて、こんなの絶対おかしいと思う現象に出会ったので書き記す。

インストールしたのはdebian 10(buster)のserver + desktop(GNOME)
普通にGUIでインストールする分には全く問題がなく、
「最近のLinuxのインストールは簡単すぎて面白みがないなぁwん?w」
とか調子こいてたら、インストール後にがあった。

xrdpをインストールしてWindows端末で遠隔操作していると、
しばらくすると応答がなくなる
  ↓
画面が固まったまま動かなくなる
  ↓
RDP切れる
  ↓
本体電源ランプ消灯

仕方なくwakeonlanで遠隔起動させるとデスクトップが復旧。
どうも電源断ではなく、「サスペンド」(休止状態)に入っている模様。
ノートPCにインストールしているわけでもない常時電力供給がある端末なのになぜ省電力設計なのか・・・?

syslogの内容を”Suspending”でgrepするとちゃんと時限的にサスペンドが動いてることがわかる。

Jan XX HH:mm:ss debian10 systemd[1]: Reached target Sleep.
Jan XX HH:mm:ss debian10 systemd[1]: Starting Suspend…
Jan XX HH:mm:ss debian10 systemd-sleep[2425]: Suspending system…

この自動サスペンド。
実はdesktopインストール後、ファーストログイン時に
「自動的にONにされる」
らしい。

▲サスペンドの諸悪の根源

この画面の項目(アクティビティ→設定→[電源]リージョン)で
初期設定の「20分」をオフに切り替えれば、サスペンドしなくなる・・・。

と、思うじゃん?
実はこの設定をオフに切り替えただけでは、解決しない。

gsettings list-recursively | grep -i "suspend|sleep"

こちらのコマンドでgnomeの設定の中から、suspendとsleepに関連するものを抽出すると、下記が出てくる。

org.freedesktop.Tracker.Miner.Files initial-sleep 15
org.gnome.Music inhibit-suspend false
org.gnome.settings-daemon.plugins.power sleep-inactive-ac-type 'nothing'
org.gnome.settings-daemon.plugins.power sleep-inactive-battery-timeout 1200
org.gnome.settings-daemon.plugins.power sleep-inactive-battery-type 'suspend'
org.gnome.settings-daemon.plugins.power sleep-inactive-ac-timeout 1200

この部分の 1200 とか suspend ってのが残ってると、
電源につなぎっぱだろうがなんだろうが
1200秒のカウントダウンが容赦なく始まる。

なんでこんなことになるのかまったく謎。(CPUが省電力のものだとモバイル扱いになる?)

なので、下記のコマンドで全部強制的に無効に書き換える。

gsettings set org.gnome.settings-daemon.plugins.power sleep-inactive-ac-type nothing
gsettings set org.gnome.settings-daemon.plugins.power sleep-inactive-battery-timeout 0
gsettings set org.gnome.settings-daemon.plugins.power sleep-inactive-battery-type nothing
gsettings set org.gnome.settings-daemon.plugins.power sleep-inactive-ac-timeout 0

このあと、いったんreboot(もしくはXwindow systemの再起動)で解消した。

しかし・・・・これ遠隔地インストールしていて、
wakeonlanを無効化していたらもれなく死ぬ案件では??
この罠を考えて実装した人は本当に素晴らしい脳みそを持っていると思う。

コメントを残す