일시 중지+재개 후 Manjaro의 독점 드라이버를 사용하여 내 NVidia 카드(3050 ti)에 연결된 모니터에 약 95%의 시간 동안 지속적으로 "신호 없음" 메시지가 표시됩니다. 모든 표준 트릭(BIOS 업데이트, nvidia-drm.modeset 전환, 다양한 기타 커널 플래그, 다양한 XOrg 옵션, NVidia의 사용자 정의 systemd 일시 중지 서비스 사용 등...).
저는 다중 시트 설정에서 두 번째 시트의 일부로 NVidia 카드를 사용하고 있습니다(loginctl 및 lightdm 사용). 이는 두 번째 시트가 가상 터미널 전환을 허용하지 않고 NVidia 사용자 정의 시스템 정지 서비스가 가상 터미널 전환을 사용하여 XOrg를 다시 초기화하도록 속이기 때문에 관련이 있을 수 있습니다.
(몇 시간 후에 해결 방법을 찾았습니다. 다른 사람들의 고민을 덜고 덜 까다로운 해결책을 찾기 위해 이 글을 게시합니다.)
답변1
일시 중지된 상태에서 재개된 후 xrandr --auto
Xorg te가 출력을 다시 초기화하도록 강제하는 데 사용할 수 있습니다 . 어떤 경우에는 먼저 작업을 수행하는 것이 필요한 것 같습니다 xrandr --off
. 이를 자동화하는 데 있어서 어려운 점은 로그인한 사용자의 Xauthority 파일이 어디에 있는지 아는 것입니다. Lightdm에는 액세스를 제공하는 자체 권한 파일이 있으며 표준 위치에 있습니다. 그리고 두 번째 자리는 때로는 DISPLAY=:0
, 때로는 그렇지 않습니다 DISPLAY=:1
.
다음 스크립트를 수정하여 올바른 출력 장치를 사용하고 다음과 같이 저장할 수 있습니다 /usr/lib/systemd/system-sleep/resume-seat1
.
#!/bin/sh
OUTPUT=HDMI-0
for DISPLAY in :0 :1 ; do
export DISPLAY
export XAUTHORITY=/run/lightdm/root/$DISPLAY
case "$1" in
pre)
xrandr --output $OUTPUT --off
;;
post)
xrandr --output $OUTPUT --auto
;;
esac
done
스크립트를 실행 가능하게 만들어야 합니다.
chmod a+x /usr/lib/systemd/system-sleep/resume-seat1