X 서버를 열어두는 방법은 무엇입니까?

X 서버를 열어두는 방법은 무엇입니까?

저는 현재 터치패드가 있는 Raspberry Pi용 GUI를 사용하여 애플리케이션을 작성 중입니다. 현재 개발 환경이 있는 PC에서 pi로 새로운 바이너리를 전송할 때마다 키보드를 pi에 연결하고 실행 애플리케이션을 사용해야 합니다 startx /path/to/binary. 이것은 잠시 후에 약간 짜증이 나기 때문에 SSH를 통해 개발 PC에서 GUI를 시작할 수 있기를 바랍니다.

이미 실행 중인 X 서버가 있는 경우 X 서버를 원격으로 시작하는 방법을 이미 알고 있습니다. 불행하게도 이것은 클라이언트 프로그램이 종료되자마자 종료되기 때문에 X 서버를 열어 둘 수 없기 때문에 지금까지 나에게 도움이 되지 않았습니다. 하지만 단일 응용 프로그램 창만 필요하기 때문에 데스크톱이나 창 관리자를 실행하고 싶지 않습니다.

이제 내 질문에 대답하겠습니다. X 서버를 열어두는 방법은 무엇입니까? 지금까지 간과했던 옵션이나 다른 해결 방법이 있습니까? 아니면 내 문제에 대한 더 나은 해결책이 있지만 전혀 관련이 없습니까?

답변1

.xinitrc예를 들어, 수면 끝에 반무한 수면을 추가할 수도 있나요 sleep 5000000? &명령 끝에는 문자가 없습니다 .

일반적으로 여기에 창 관리자나 세션 관리자 명령을 넣을 수 있지만 그 중 하나가 필요하지 않다고 하셨으므로 Xserver를 활성 상태로 유지하려면 또 다른 장기 실행 프로그램이 필요합니다.

수면은 자원을 소비하지 않습니다.

답변2

X 서버를 열어두는 대신 X 서버를 자동으로 다시 시작할 수 있습니다. Pi에서 실행

while :; do startx /path/to/binary; done

이렇게 하면 바이너리를 업데이트할 때마다 이를 종료할 수 있으며 X 서버는 새 바이너리로 다시 시작됩니다.

이를 중지해야 하는 경우 다음과 같은 조건을 추가할 수 있습니다.

until [ -f /tmp/stop ]; do startx /path/to/binary; done

루프를 종료하고 싶을 때마다,

touch /tmp/stop

그런 다음 프로그램을 종료하면 다시 시작되지 않습니다.

관련 정보