2007년 6월 8일 금요일

cygwin을 사용하여 원격의 X 윈도우 프로그램 실행하기

두 개의 컴퓨터를 갖고 있고 각 컴퓨터에는 리눅스와 윈도우가 깔려 있을 때, 리눅스와 윈도우를 오가는 작업은 몇 가지 옵션이 있을 수 있다.

- 두 개의 모니터를 갖고 있을 때: synergy 를 사용하여 듀얼 모니터처럼 쓸 수 있다.

- 하나의 모니터를 갖고 있을 때:

옵션 1: 리눅스의 X 프로그램을 윈도우 프로그램에 띄워서 작업을 할 수 있다.
옵션 2: 키보드, 마우스, 모니터를 공유하는 기기(KVM 스위치)를 사용한다.
옵션 3: synergy를 사용하고 모니터에 두 개의 인풋(D-Sub와 DVI)을 서로 다른 컴퓨터에 연결하여 모니터의 digital과 analog를 선택하는 버튼을 사용하여 화면을 선택한다.
오늘 설명하는 방법은 이 가운데 옵션 1에 해당하는 것인데, 간단하고 편리한 방법이다. Cygwin이 설치되어 있어야 하고, 설치할 때 X관련 패키지도 설치되도록 해야 한다. Cygwin을 설치했다면, Xwin.exe를 실행하여 설치되어 있는지를 확인하자.

1. cygwin의 X window 실행

[방법 1]
윈도우의 시작버튼 -> 프로그램 -> Singular CAS -> xterm 실행
[방법 2]
cygwin 콘솔 실행후 콘솔에서 다음을 실행
> startxwin.sh(혹은 startxwin.bat)

2. 리눅스 컴퓨터로 연결 및 X 윈도우 프로그램 실행

1.에서 이야기한 것처럼 하면 X 서버를 의미하는 X 표시가 윈도우의 시스템 트레이에 나타나게 되고, xterm이 하나 뜬 상태가 된다. xterm에서 다음과 같이 입력하자.
>ssh -Y id@remote_host_ip
>[x 윈도우 프로그램 실행]

예를 들어,
>kdevelop &
>eclipse &
등을 실행하면, 리눅스 컴퓨터의 eclipse나 kdevelop이 실행되고, 리눅스에서 작업하는 것과 동일한 작업을 할 수 있다.

3. 로컬 호스트의 X 윈도우 서버 종료

X 윈도우 서버를 종료할 때는 오른쪽 아래의 시스템 트레이에 있는 X 아이콘을 오른쪽 마우스 버튼으로 클릭하고, Exit를 선택하면 된다.


참고

Cygwin은 윈도우에서 유닉스와 비슷한 환경을 제공하는 윈도우 프로그램이다. 윈도우의 API를 사용하고, 많은 라이브러리가 포팅되어 있어서 개발 환경으로도 괜찮은 플랫폼이다. 리눅스 소켓 프로그램을 cygwin에서 작성하면 윈도우에서 돌아가는 네트워크 프로그램을 만들 수도 있다. 그 외에도 윈도우에 SSH 서버를 돌려서 원격에서 파일을 안전하게 다운로드 받고 싶다면, OpenSSH를 서비스로 띄울 수도 있다. (물론, Apache같은 웹 서버도 여기서 돌아가고 서비스로 띄울 수 있다.)




1 개의 댓글:

익명 :

emm... attractive thread.