tty의 X 스크린 샷


15

Xvfb를 사용하여 응용 프로그램을 시작하고 스크린 샷을 찍을 수 있습니다.

내가 궁금한 점은 기존 (휴면) X 세션에서 캡처하는 방법입니다.

tty 또는 ssh에서 말하십시오.

내가 이해 한 바에 따르면 창은 매핑되지 않으며 리소스를 보존하기 위해 존재하지 않습니다. 가상 창 관리자에서 기존 창, 작업 공간 등을 매핑하고 스냅 할 수있는 도구가 있습니까?

아니면 비슷한 것을 libx11사용하여 스냅을 사용 하고 만들 수 XShmCreateImage있습니까?


2
xwd -root | convert - /tmp/image.jpg당신이 찾고있는 무엇?
jippie

3
@jippie : 아마도. 문제는 Windows가 매핑 해제됨에 따라 xwd가 덤프 할 것이 없기 때문에 이미지가 검은 색으로 표시됩니다. (즉, tty1에서 해당 명령을 시도하십시오 xwd -display :0 -root | convert xwd:- /tmp/0.png)
Runium

'unmapped'의 의미를
모름

4
@jippie : 메모리에 상주하지 않습니다. 내가 이해하는 것처럼 : 작업 공간에있을 때-활성화되어 있으면-픽셀이 메모리에 매핑되어 GPU가 처리하고 화면에 렌더링합니다. 작업 공간이 전환되거나 종료 될 때 (즉, Ctrl-Alt-F1에 의해) 이러한 맵은 맵핑 해제되어 (자원을 확보하기 위해) "디스플레이 버퍼"에 아무것도 없으며 검정색 이미지를 제공합니다.
Runium

나는 당신이 무슨 뜻인지, 설명을 위해 thnx를 본다. 이 경우 대답을 모릅니다.
jippie

답변:


7

ctrl-alt-F (x)없이 명령 줄에서 수동으로 X tty를 "켜질"수 있습니다.

X가 tty 7에 있고 텍스트 터미널에 로그인 한 경우

chvt 7 ; DISPLAY=0.0 xwd -root > screendump.xwd ; chvt 1

그러나 xhost + localhost xsession 는 xsession 내에서 문제가되어야합니다. 그렇지 않으면 xwd가 x 서버에 연결할 수 없습니다.

이를 통해 ssh 세션에서 수행 할 수 있습니다.

추신 : 이론적으로 MTD 를 사용하면 비디오 카드 메모리에서 화면 캡처를 수행 할 수 있어야합니다. 따라서 먼저 X 세션을 "깨우지"않습니다.


좋은 게시물 감사합니다. 나는 그것을 찾고 있습니다. 내 주요 문제 중 하나는 내가 오래된 창문을 가지고 있고 모든 것이 어떻게 짜여 있는지 파악하는 데 문제가 있다는 것입니다. X 서버, X 윈도우 관리자, 액세스 및 작성. 그러나 거기에 도착하는 것.
Runium

@Sukminder이 설정을 어렵게하거나 이에 대한 추가 지시가 필요합니까?
John Siu
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.