X11을 사용하여 클라우드의 컴퓨터(ec2, Compute Engine 등)에 표시하는 프로그램을 실행하려고 합니다(xeyes 또는 이와 유사한 것으로 가정). 내가 아는 한, -X
서버에 SSH로 접속할 때 해당 옵션을 사용하면 X11 서버에 Windows가 표시되도록 할 수 있습니다. 하지만 실제로 해당 컴퓨터에 창을 표시하려고 합니다(이게 왜 필요한지 이해가 안 되지만 필요한 비디오 녹화 프로그램이 몇 개 있습니다). 어떻게 해야 하나요? 확장 가능한 솔루션을 만들려고 노력 중입니다.
집에 기계가 있어서 테스트 중이에요. 우분투 데스크탑 20.04가 있습니다. 정상적으로 로그인(키보드, 마우스, 모니터)하면 ps aux | grep X
X 서버가 실행되는 것을 볼 수 있습니다. 컴퓨터에 SSH로 접속한 다음 DISPLAY
환경 변수를 변경하고 해당 컴퓨터에서 그래픽 프로그램을 시작하면 동일한 내용을 볼 수 있습니다. 그러나 Ubuntu 데스크탑을 통해 시스템에 로그인하지 않으면 실행 중인 X 서버가 없으며 프로그램을 시작할 수 없습니다. 나는 이것이 아마도 그럴 것이라는 것을 이해합니다. 나는 기계가 모니터가 있다고 생각하도록 "속이고" 싶습니다.
를 실행하여 ssh에서 x를 부팅하려고 시도했지만 ssh에서 Ubuntu Desktop을 부팅해야 하는지 아니면 X11 프로그램을 실행하기 위해 완전히 다른 작업을 수행해야 하는지 모르겠습니다 startx
.Only console users are allowed to run the X server
내 작업에 도움이 될 수 있는 몇 가지 일반적인 X11 질문이 있습니다.
- 실제로 X에서 렌더링하는 사람은 누구입니까? XClient인 경우 모든 그래픽을 렌더링하고 원시 픽셀을 X-Server로 보내 표시합니까? 아니면 XClient가 렌더링하려는 창의 일부 표현을 보내고 XServer가 이를 렌더링합니다. IE, 초고속 GPU가 있고 XServer와 XClient가 다른 컴퓨터에서 실행되고 있는 경우 GPU를 어떤 컴퓨터에서 실행해야 합니까?
- X11은 컴퓨터(HDMI, VGA)에 연결된 실제 입력을 볼 때만 모니터를 인식합니까, 아니면 렌더링할 수 있는 소프트웨어 전용 모니터를 가질 수 있습니까?
이 문제를 해결하는 데 도움이 될 수 있는 자료를 기꺼이 읽어보겠습니다. 이 부분에 대한 도움을 주시면 감사하겠습니다. 감사해요!
편집 1: 실제 사용 사례는 독점적이지만 아이디어는 크롬 창을 렌더링하고 시간이 지남에 따라 창의 출력을 비디오 파일에 기록하려고 한다는 것입니다. 확장성이 뛰어나서 설정과 실행이 쉽기를 바랍니다.