SSH를 통해 현재 창의 xprop 출력을 얻는 방법은 무엇입니까?

SSH를 통해 현재 창의 xprop 출력을 얻는 방법은 무엇입니까?

내 장치 A에서는 dwm을 사용하여 x11을 실행하고 있습니다. 장치 B에서 장치 A로 ​​ssh를 통해 장치 A에서 따라가고 있는 창의 xprop 출력을 얻고 싶습니다. dwm 장치 A의 터미널에서 터미널 에뮬레이터를 실행하면 xprop -id "$(xdotool getactivewindow)"xprop이 터미널 에뮬레이터의 출력으로 표시됩니다. 그러나 ssh를 통해 이 명령을 실행하면 다음과 같은 출력이 표시됩니다.

Error: DISPLAY environment variable is empty. Is there an Xorg or other X server running? You can try setting 'export DISPLAY=:0' and trying again.
Failed creating new xdo instance.
xprop:  unable to open display ''

이 작업을 수행하면 export DISPLAY=:0( :0은 장치 A의 터미널 에뮬레이터에서 $DISPLAY를 확인할 때의 값입니다) 위 명령은 다음 오류를 생성합니다.

Authorization required, but no authorization protocol specified
Failed creating new xdo instance.
Authorization required, but no authorization protocol specified
xprop:  unable to open display ':0'

이 문제를 어떻게 해결합니까(라이센스 계약 또는 필요한 계약 지정)?

답변1

배포판이 X 인증을 수행하는 방식에 따라 다르지만 확실하지 않습니다 dwm. 한 가지 방법은 "MIT 매직 쿠키"를 ~/.Xauthority사용하여 수정할 수 xauth있습니다 man xauth.

이와 같은 작업을 수행하면 ps axu | grep XX 서버에 대한 명령줄이 표시되며 내 배포판에는 여기에 옵션이 포함되어 있습니다 -auth /name/to/authfile. 이 파일을 직접 복사하여 ~/.Xauthority(vs와 같은 읽기 권한 필요 sudo) 다른 사용자 또는 SSH 연결을 승인할 수 있습니다.

이는 귀하의 배포판에 적용될 수도 있고 적용되지 않을 수도 있습니다.

xhost +(또한 이것이 올바른 쿠키를 얻는 것보다 덜 안전하다는 조언도 받게 됩니다 ).

관련 정보