GUI 프로그램을 터미널에서 구동하는 방법이 궁금합니다.
저도 왜 이런 어처구니 없는 짓을 하는지 이해가 되지 않습니다만, 사람을 너무 괴롭히니 지푸라기라도 붙잡는 심정으로
질문을 올립니다.
먼저 환경은 다음과 같습니다.
Ubuntu Server 환경, X-Window(Server 버전에서 X + Gnome 설치), Java, Apache2
간단합니다. Apache2 www-data 계정으로 CGI에서 GUI(Swing) 프로그램을 구동하면 됩니다.
GUI 프로그램은 Timer를 이용해서 일정 시간이 지나면 자동으로 종료합니다.
Google를 검색해보니, DISPLAY를 :0.0으로 환경변수를 설정하고 Java GUI(Swing)을 구동시킬 계정에
미리 w-window를 실행해두면 terminal에서 GUI를 띄우지 않고 Process만 진행할 수 있다는걸 알았습니다.
(이 과정에서 많은 분들이 궁금하실 겁니다. 저렇게 할거면 그냥 콘솔 프로그램으로 작성하면 될 것을
왜 쓸데 없는데 노력을 기울이는가 하고....하지만 이렇게 하랍니다. 안됀다고 하니 사람을 너무 괴롭혀서
좀 힘듭니다;;)
문제는 www-data 계정에 DISPLAY 환경변수를 설정하는 방법을 알 수가 없고, 더 큰 문제는
www-data 계정에 x-window를 구동할 수 있을지도 불투명합니다.
아, cygwin과 같은 플랫폼 변경은 해답이 되지 않습니다. 소프트웨어 테스팅하는 용도로 사용할 것이라
웹에서 소스를 수집하고 CGI방식으로 프로그램을 반드시 "구동" 하면서 테스팅을 합니다.
혹시나 해결 방법이나, 가능성 여부를 타진해 주실 고수분이 있다면 조언 좀 부탁드리겠습니다.
p.s
물론 최상의 방법은 Functional Testing을 이용해서 기능을 자체적으로 테스팅하는 것이겠지만
아주 "짧은" 시간내에 구현해야 하기 때문에 장기적인 안목으로 개발하는 것이 힘든 상황입니다.
질문을 잘 이해 못했지만....
담배한대 피고 다시 읽어보니... 이해 되는군요...
[server]$ nmap home
6000/tcp open X11
[server]$ cat test.php
[home]$ xhost server [로컬 X11 가상터미널]
server being added to access control list
[home]$ lynx http://server/test.php
xmms 정상작동합니다.
원하는 작업 성공하시길...
없음
댓글 달기