로컬 SSH 연결을 통해 컴퓨터의 모니터 감지

로컬 SSH 연결을 통해 컴퓨터의 모니터 감지

로컬 네트워크에 있는 컴퓨터에서 비디오 관련 콘텐츠를 확인하는 스크립트를 작성해야 합니다.

  • 모니터가 연결되어 있나요?
  • 비디오 드라이버가 최신이고 하드웨어에 적합합니까?
  • Xorg가 실행 중입니까?

그러나 모니터가 로컬 SSH 연결을 통해 연결되어 있는지 확인하는 신뢰할 수 있는 방법을 찾을 수 없습니다. 예를 들어, 머신 A에서 동일한 서브넷의 다른 머신 B로 ssh를 실행하면 도구는 xrandr머신 A에 연결된 모니터에 대한 정보를 반환하지만 머신 B는 반환하지 않습니다. 다른 많은 도구를 사용해 보았지만 모두 동일한 효과를 나타냅니다. 셸 세션을 실행하는 컴퓨터가 아니라 연결된 컴퓨터에 연결된 모니터를 프로브하고 있는지 어떻게 확인합니까?

답변1

X11 전달을 비활성화하고( -x스위치를 사용하여 ssh) 머신 B에 대한 DISPLAY 환경 변수를 설정합니다. 예를 들어, 다음은 머신 B의 :0에 대한 설정을 알려줍니다.

ssh -x machineB
DISPLAY=:0 xrandr

답변2

"get-edid"라는 도구를 사용하면 디스플레이에서 식별 정보를 읽을 수 있습니다.편집 웹사이트 읽기 식별 데이터의 확장된 표시

올바른 X 구성 모니터 섹션을 사용하여 get-edid에서 생성된 "parse-edid":

내 컴퓨터의 예:

# get-edid | parse-edid 
parse-edid: parse-edid version 2.0.0
get-edid: get-edid version 2.0.0

Performing real mode VBE call
Interrupt 0x10 ax=0x4f00 bx=0x0 cx=0x0
Function supported
Call successful

VBE version 300
VBE string at 0xc01f0 "ATI ATOMBIOS"

VBE/DDC service about to be called
Report DDC capabilities

Performing real mode VBE call
Interrupt 0x10 ax=0x4f15 bx=0x0 cx=0x0
Function supported
Call successful

Monitor and video card combination does not support DDC1 transfers
Monitor and video card combination supports DDC2 transfers
0 seconds per 128 byte EDID block transfer
Screen is not blanked during DDC transfer

Reading next EDID block

VBE/DDC service about to be called
Read EDID

Performing real mode VBE call
Interrupt 0x10 ax=0x4f15 bx=0x1 cx=0x0
Function supported
Call successful

parse-edid: EDID checksum passed.

# EDID version 1 revision 3
Section "Monitor"
# Block type: 2:0 3:fd
# Block type: 2:0 3:fc
Identifier "Acer H233H"
VendorName "ACR"
ModelName "Acer H233H"
# Block type: 2:0 3:fd
HorizSync 30-83
VertRefresh 56-75
# Max dot clock (video bandwidth) 170 MHz
# Block type: 2:0 3:fc
# Block type: 2:0 3:ff
# DPMS capabilities: Active off:yes  Suspend:no  Standby:no

Mode    "1920x1080" # vfreq 60.000Hz, hfreq 67.500kHz
    DotClock    148.500000
    HTimings    1920 2008 2052 2200
    VTimings    1080 1084 1089 1125
    Flags   "+HSync" "+VSync"
EndMode
# Block type: 2:0 3:fd
# Block type: 2:0 3:fc
# Block type: 2:0 3:ff
EndSection

이 기능을 사용하려면 루트 사용자여야 합니다. /etc/X11/xorg.conf에는 아무 것도 기록되지 않습니다.

관련 정보