コマンドラインからDebian 11画面(Wayland)を起動する方法は? (「黒い画面」を無効にする)

コマンドラインからDebian 11画面(Wayland)を起動する方法は? (「黒い画面」を無効にする)

Debianサーバーを制御するためにMQTTプログラムを設定しました。サーバーキャビネットにモーションセンサーがあり、キャビネットに入るとき(マウスを動かしたりキーボードをタッチする前でも)、画面が自動的にオンになります。 5分間活動がなければ画面が消えるようにしたいと思います。

sudo vbetool dpms off実行してモニターをオフにしてから再度sudo vbetool dpms on入れることができました。ところで、モニターの電源を切ってもVNCを介してサーバーに接続できることがわかりました。

設定には以下のバッテリー節約オプションがありますが、「黒い画面」の設定によってすべてが中断されるようです。

Debian 電源設定

「ブラックスクリーン」が有効になると、sudo vbetool dpms on画面は点灯しますが、黒くなります。 VNC経由で接続できなくなりました。

コマンドラインでDebianの「黒い画面」を無効にする方法は?揺れるマウスをシミュレートするために何かを実行できますか?または、「黒い画面」設定を無効にし、アクティビティがないときに画面をオフにするには、別の方法を使用する必要がありますか? (xスクリーンセーバー?)

xset私はWaylandを使っているので、オンラインで見つけたコマンドやXorgの他のコマンドを実行できないようです。

「セッション」を含むすべてのプロセスは次のとおりです。

# ps ax | grep session
  24510 ?        Ss     0:00 /usr/bin/dbus-daemon --session --address=systemd: --nofork --nopidfile --systemd-activation --syslog-only
  27420 ?        Sl     0:00 gdm-session-worker [pam/gdm-password]
  27451 ?        Ss     0:00 /usr/bin/dbus-daemon --session --address=systemd: --nofork --nopidfile --systemd-activation --syslog-only
  27475 ?        S<l    0:00 /usr/bin/pipewire-media-session
  27480 tty3     Ssl+   0:00 /usr/libexec/gdm-wayland-session /usr/bin/gnome-session
  27487 tty3     Sl+    0:00 /usr/libexec/gnome-session-binary --systemd
  27541 ?        Ssl    0:00 /usr/libexec/gnome-session-ctl --monitor
  27546 ?        Ssl    0:00 /usr/libexec/gnome-session-binary --systemd-service --session=gnome
  27708 ?        Sl     0:00 /usr/libexec/at-spi2-registryd --use-gnome-session
  28262 pts/1    S+     0:00 grep --color=auto session

答え1

ついに信頼できる解決策を見つけました。マウスを動かしたりキーストロークを送信したりするために使用できるコマンドラインツール「ydotool」があります。

aptを使用してインストールできるバージョンは古すぎてバグが多く、GitHubで複製してソースからコンパイルする必要がありました。このために実行したすべてのコマンドは次のとおりです。

git clone https://github.com/ReimuNotMoe/ydotool
cd ydotool
mkdir build
cd build
cmake ..
make -j `nproc`
sudo make install
cp ydotool.service /etc/systemd/system/
systemctl daemon-reload
systemctl enable ydotool.service
systemctl start ydotool.service

ydotoolこれで使用できるコマンドが作成されました。

以下は、画面を目覚めさせるために書いたシンプルな「wiggle mouse」スクリプトです。

#!/bin/bash

set -eu
ydotool mousemove --absolute -- 355 0
sleep 0.1
ydotool mousemove --absolute -- 350 0

これは私にとってうまく機能し、Debianのスリープ設定に組み込まれている「黒い画面」機能を引き続き使用できます。

関連情報