명령줄에서 Debian 11 화면(Wayland)을 깨우는 방법은 무엇입니까? ("검은색 화면" 비활성화)

명령줄에서 Debian 11 화면(Wayland)을 깨우는 방법은 무엇입니까? ("검은색 화면" 비활성화)

Debian 서버를 제어하기 위해 MQTT 프로그램을 설정했습니다. 서버 캐비닛에 모션 센서가 있고 캐비닛에 들어갈 때(마우스를 움직이거나 키보드를 터치하기 전이라도) 화면이 자동으로 켜지기를 원합니다. 5분 동안 활동이 없으면 화면이 꺼지도록 하고 싶습니다.

sudo vbetool dpms off실행해서 모니터를 껐다가 sudo vbetool dpms on다시 켤 수 있었습니다 . 그런데 모니터가 꺼지더라도 VNC를 통해 서버에 접속할 수 있다는 사실을 발견했습니다.

설정에 다음과 같은 배터리 절약 옵션이 있는데 "검은색 화면" 설정으로 인해 모든 것이 중단되는 것 같습니다.

데비안 전원 설정

"블랙 스크린"이 활성화되면 sudo vbetool dpms on화면은 켜지지만 검은색으로 유지됩니다. 더 이상 VNC를 통해서도 연결할 수 없습니다.

명령줄에서 데비안의 "검은색 화면"을 비활성화하는 방법은 무엇입니까? 흔들리는 마우스를 시뮬레이션하기 위해 무언가를 실행할 수 있습니까? 아니면 "검은색 화면" 설정을 비활성화하고 활동이 없을 때 화면을 끄려면 다른 방법을 사용해야 합니까? (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

이것은 나에게 잘 작동하며 데비안의 절전 설정에 내장된 "검은색 화면" 기능을 계속 사용할 수 있습니다.

관련 정보