강좌 & 팁
X-Window라서 설치가 복잡할 줄 알았는데, 물론 복잡은 해도 제가 사용한 페도라 이미지에 이미 X 윈도우가 설치되어 있어서 큰 어려움 없이 X 윈도우를 띄울 수 있었습니다. 아울러 coLinux에서는 VMware처럼 가상 출력 윈도우가 없기 때문에 리눅스에서 VNC 서버를 운영하고 MS 윈도우에서 VNC 뷰어를 이용해서 X 윈도우를 출력해야 하는데, 감사하게도 VnC 서버까지 설치되어 있기 때문에 그야말로 VNC 서버 설정만 하면 바로 X 윈도우를 실행할 수 있습니다.
일단 X 윈도우을 띄워보자
VNC 서버를 이용하기 위해서는 VNC 서버로 로그인할 수 있는 사용자 정보를 먼저 등록해야 합니다. 사용자 정보를 등록하기 위해 /etc/sysconfig/vncservers를 수정하셔야 하는데, 만일 파일이 없다면 VNC 서버가 설치되지 않은 것이므로 설치를 먼저 하십시오. 그러나 최근의 페도라 이미지를 사용하셨다면 반드시 설치되어 있을 것입니다.
]# vi /etc/sysconfig/vncservers 파일 내용 중 하단 두 줄을 아래와 같이 수정합니다. 주의 하실 것은 반드시 -localhost 옵션을 빼야 MS 윈도우에서 VNC 뷰어로 연결할 수 있습니다. VNCSERVERS="1:root" VNCSERVERARGS[1]="-geometry 1024x768 -depth 16 -nolisten tcp -nohttpd MS 윈도우의 VNC 뷰어에서 로그인하기 위한 암호를 등록합니다.
root 말고 다른 계정을 이용하여 로그인하려면 아래와 같이 추가하면 됩니다. 1:root 에서 숫자는 포트번호이며, root는 계정 ID입니다. 그러므로 다른 유저로 로그인을 하려면 아래와 같이 포트 번호와 ID를 주욱 나열합니다.
VNCSERVERS="1:root 2:jwjw 3:jwmx" VNCSERVERARGS[1]="-geometry 1024x768 -depth 16 -nolisten tcp -nohttpd VNCSERVERARGS[2]="-geometry 800x600 -depth 16 -nolisten tcp -nohttpd VNCSERVERARGS[3]="-geometry 640x480 -depth 16 -nolisten tcp -nohttpd
등록된 계정으로 로그인해서 vncpasswd를 실행하여 암호를 등록합니다. vnc 뷰어에서 이미 포트 번호로 연결하기 때문에 ID를 묻지 않습니다. 벌써 포트 번호로 유저를 구별할 수 있기 때문이죠. 그래서 암호만 입력하면 로그인할 수 있기 때문에 반드시 암호를 입력해 주어야 겠습니다.
]# vncpasswd Password: Verify: ]# /etc/init.d/vncserver restart --> vnc 서버 실행 VNC 서버 종료 중: 1:root [ OK ] VNC 서버 (을)를 시작합니다: 1:root New 'coLinux:1 (root)' desktop is coLinux:1 Starting applications specified in /root/.vnc/xstartup Log file is /root/.vnc/coLinux:1.log -bash: line 1: 2660 종료됨 $SHELL -c "echo > /dev/tcp/10.0.2.2/7000" 2>> /dev/null [ OK ] log 파일로 몇 번째 port 로 vnc server가 listen하고 있는지 확인하겠습니다. ]# cat /root/.vnc/coLinux:1.log Xvnc Free Edition 4.1.3 Copyright (C) 2002-2008 RealVNC Ltd. See http://www.realvnc.com for information on VNC. Underlying X server release 10502000, Sun Feb 1 09:56:23 2009 vncext: VNC extension running! vncext: Listening for VNC connections on port 5901 vncext: created VNC server for screen 0 expected keysym, got XF86Info: line 914 of inet ]#
5901포트로 listen 하고 있군요. 이 정보를 참고로 MS 윈도우에서 VNC를 뷰어를 이용하여 접속하면 되겠습니다. MS 윈도우에서는 울트라 VNC나 Tight VNC 등 여러 가지가 있는데, 저는 Tight VNC나 Real VNC 무료 버전을 사용합니다. 내려 받아 뷰어만 설치하고 실행했습니다. 주소에 coLinux의 주소를 넣고 포트번호도 함께 넣는데 포트 번호는 앞서 VNCSERVERS에 등록한 포트 번호를 입력합니다.
막상 연결되면 반갑지만 좀 실망스럽습니다. 왜냐. 윈도우가 너무 단순하고 뭐랄까, 여튼 이게 뭐야? 어떻게 하라구? 소리가 절로 나옵니다. 기본으로 잡힌 tvm X 윈도우 메니저가 매우 단순한 모습이기 때문이죠.
XFCE - X 윈도우 메니저
기본 윈도우 메니저에 실망햇다면 다른 X 윈도우 메니저를 설치하면 되는데, XFCE를 선택하시는 분이 많네요. 왜 XFCE일까 궁금했었는데, 그놈을 설치하고 이해할 수 있었습니다. 설치 시간부터 짧더군요.
]# yum -y groupinstall XFCE
조금 시간이 걸립니다만 잠시 후에 소개해 드릴 "그놈"보다는 작업이 빠르게 진행됩니다. 루트에 있는 .vcn/xstartup 에서 X 윈도우 메니저를 xfce4로 선택해 줍니다.
[ -x /etc/vnc/xstartup ] && exec /etc/vnc/xstartup [ -x /usr/bin/xrdb -a -r "$HOME/.Xresources" ] && xrdb "$HOME/.Xresources" [ -x /usr/bin/xsetroot ] && /usr/bin/xsetroot -solid '#222E45' [ -x /usr/bin/xclock ] && /usr/bin/xclock -geometry 100x100-5+5 & [ -x /usr/bin/vncconfig ] && /usr/bin/vncconfig -iconic & [ -x /usr/bin/xterm ] && /usr/bin/xterm -geometry 80x50-50+150 & [ -x /usr/bin/xfce4-session ] && /usr/bin/xfce4-session &
vnc 서버를 다시 기동한 후 Ms 윈도우에서 다시 연결해 보십시오. 색다른 모습의 X 윈도우를 보실 수 있습니다.
그런데 문제는 한글이 안 되지요. 그래서 한글 폰트부터 설치했습니다.
]# yum -y install fonts-korean ]# /etc/init.d/vncserver restart ---> vnc 서버를 다시 기동합니다.
그리고 vnc로 로그인해 보세요. 아까처러 글씨가 깨지지 않고 한글이 잘 보입니다. 그 다음이 한글 입력기를 설치해야 하는데, 아래의 주의 사항을 꼭 읽어 보세요.
]# yum -y install scim-hangul ]# vi ~/.vnc/xstartup ---> 아래의 scim을 위한 설정을 삽입합니다. [ -x /etc/vnc/xstartup ] && exec /etc/vnc/xstartup [ -x /usr/bin/xrdb -a -r "$HOME/.Xresources" ] && xrdb "$HOME/.Xresources" [ -x /usr/bin/xsetroot ] && /usr/bin/xsetroot -solid '#222E45' [ -x /usr/bin/xclock ] && /usr/bin/xclock -geometry 100x100-5+5 & [ -x /usr/bin/vncconfig ] && /usr/bin/vncconfig -iconic & [ -x /usr/bin/xterm ] && /usr/bin/xterm -geometry 80x50-50+150 & export XMODIFIERS="@im=SCIM" export GTK_IM_MODULE=scim export QT_IM_MODULE=scim export LANG=ko_KR.EUC-KR [ -x /usr/bin/xfce4-session ] && /usr/bin/xfce4-session &
한글 입력을 위한 모든 작업을 완료했습니다. vnc server 를 다시 실행하겠습니다.
]# /etc/init.d/vncserver restart
VNC 뷰어로 VNC 서버와 연결하신 후 설정 관리자를 호출합니다.
설정 내용 중에 "Input Method"를 클릭합니다.
아래 그림의 순서대로 "입력 방식 기능 활설화"를 체크하고 SCIM사용을 클릭후 [입력 방식 설정] 버튼을 클릭합니다.
전체 설정에서 한영 변환키를 입력합니다.
확인버튼을 이용하여 설정을 저장하면, 이후로 편집기나 터미널에서 한글 입력이 가능합니다.
그놈 메니저 설치
이번에는 그놈 메니저를 설치해 보겠습니다.
]# yum -y groupinstall "GNOME Desktop Environment"
설치 시간부터 XFCE 보다 훨씬 많이 걸립니다. 그리고 주의하실 것이 있습니다. VNC뷰어에서 root 계정으로 로그인을 하면 그놈 윈도우 메니저가 실행되지 않습니다. 그러므로 꼭 일반 사용자 계정을 등록하고, 일반 사용자 계정으로 로그인하십시오.
저는 이를 위해 아래와 같이 vncservers를 변경했습니다.
]# vi /etc/sysconfig/vncservers
VNCSERVERS="1:root 2:jwjw" VNCSERVERARGS[1]="-geometry 1024x768 -depth 16 -nolisten tcp -nohttpd" VNCSERVERARGS[2]="-geometry 800x600 -depth 16 -nolisten tcp -nohttpd"
암호 등록을 위해 일반 사용자 계정으로 로그인을 한 후 vncpasswd로 vnc 서버로 로그인하기 위한 암호를 등록합니다. 아울러 vnc 서버가 실행할 때 처리할 명령을 입력합니다.
]$ vncpasswd Password: Verify: ]$ vi ~/.vnc/xstartup [ -x /etc/vnc/xstartup ] && exec /etc/vnc/xstartup [ -x /usr/bin/xrdb -a -r "$HOME/.Xresources" ] && xrdb "$HOME/.Xresources" [ -x /usr/bin/xsetroot ] && /usr/bin/xsetroot -solid '#222E45' [ -x /usr/bin/xclock ] && /usr/bin/xclock -geometry 100x100-5+5 & [ -x /usr/bin/vncconfig ] && /usr/bin/vncconfig -iconic & [ -x /usr/bin/xterm ] && /usr/bin/xterm -geometry 80x50-50+150 & export XMODIFIERS="@im=SCIM" export GTK_IM_MODULE=scim export QT_IM_MODULE=scim export LANG=ko_KR.EUC-KR [ -x /usr/bin/gnome-session ] && /usr/bin/gnome-session &
이제 vncserver 를 다시 실행합니다.
]# /etc/init.d/vncserver restart
그리고 VNC 뷰어로 등록한 일반 계정으로 로그인합니다. 그놈 윈도우 메니저가 출력됩니다.
KDE 설치
KDE도 설치해 봐야 겠지요. 역시 시간이 무차게 걸리는 군요. 아래의 명령으로 설치하고,
]# yum -y groupinstall "KDE (K Desktop Environment)"
gnome를 선택할 때 gnome-session으로 설정했다면 KDE는 startkde로 적어 주시면 됩니다.
[ -x /etc/vnc/xstartup ] && exec /etc/vnc/xstartup [ -x /usr/bin/xrdb -a -r "$HOME/.Xresources" ] && xrdb "$HOME/.Xresources" [ -x /usr/bin/xsetroot ] && /usr/bin/xsetroot -solid '#222E45' [ -x /usr/bin/xclock ] && /usr/bin/xclock -geometry 100x100-5+5 & [ -x /usr/bin/vncconfig ] && /usr/bin/vncconfig -iconic & [ -x /usr/bin/xterm ] && /usr/bin/xterm -geometry 80x50-50+150 & export XMODIFIERS="@im=SCIM" export GTK_IM_MODULE=scim export QT_IM_MODULE=scim export LANG=ko_KR.EUC-KR [ -x /usr/bin/startkde ] && /usr/bin/startkde &
아래는 KDE 윈도우 메니저로 실행한 모습인데, 그놈보다는 매우 깔끔하군요. 예쁘고. 그런데 그마만큼 둔탁한듯 합니다.
리눅스가 부팅하면 자동으로 실행되도록
리눅스가 부팅했을 때 VNC 서버를 자동으로 부팅하게 하면 더욱 편하겠죠. 이런 설정은 역시 ntsysv 가 편합니다.
]# ntsysv
이제 coLinux를 이용해서 X 윈도우 프로그래밍도 가능해졌습니다. 이제 프레임버퍼를 해결해야 하는데, 어떻게 해야 할지 난감. 혹 아신는 분은 도움을 부탁드립니다. 간절히... ^^