2017년 12월 18일 월요일

Ubuntu 에 tightVNC Server 설치

일반적으로 Ubuntu Server 는 CUI 를 사용해서 관리를 한다.
(반드시 그래야 하는건 아니지만)

일반적으로 Ubuntu Desktop 은 GUI 를 사용해서 관리를 한다.
(반드시 그래야 하는건 아니지만)

Ubuntu 에 원격 컴퓨터에 설치되어 있는 경우,
ssh 를 통해 CUI 로 control 하면 된다.

문제는 원격으로 어떻게 GUI 를 control 하냐는 것이다.

Windows 에는 "윈도우 원격데스크탑" 이라는 control 프로그램이 있어서,
아주 편리하게 GUI 를 control 할 수 있다.

Ubuntu 에서는 VNC 라는 원격 control 프로그램이 있어서, 이것을 사용하면 된다.

※ 물론 예전에 포스팅한 것처럼 vcxsrv 를 사용하는 방법도 있다.
http://kimchki.blogspot.kr/2017/11/x-x-window-system-vcxsrv-windows-x.html

윈도우에서 리눅스로 접속을 할 것이므로,
일단 윈도우 버전을 다운로드 하고 설치 하자.
https://www.tightvnc.com


리눅스에서도 다운로드 하고 설치 하자
% sudo apt-get install tightvncserver

패키지 목록을 읽는 중입니다... 완료
의존성 트리를 만드는 중입니다
상태 정보를 읽는 중입니다... 완료
제안하는 패키지:
  tightvnc-java
다음 새 패키지를 설치할 것입니다:
  tightvncserver
0개 업그레이드, 1개 새로 설치, 0개 제거 및 0개 업그레이드 안 함.
633 k바이트 아카이브를 받아야 합니다.
이 작업 후 1,795 k바이트의 디스크 공간을 더 사용하게 됩니다.
받기:1 http://kr.archive.ubuntu.com/ubuntu xenial/universe amd64 tightvncserver amd64 1.3.10-0ubuntu3 [633 kB]
내려받기 633 k바이트, 소요시간 2초 (255 k바이트/초)
Selecting previously unselected package tightvncserver.
(데이터베이스 읽는중 ...현재 213733개의 파일과 디렉터리가 설치되어 있습니다.)
Preparing to unpack .../tightvncserver_1.3.10-0ubuntu3_amd64.deb ...
Unpacking tightvncserver (1.3.10-0ubuntu3) ...
Processing triggers for doc-base (0.10.7) ...
Processing 1 added doc-base file...
Processing triggers for man-db (2.7.5-1) ...
tightvncserver (1.3.10-0ubuntu3) 설정하는 중입니다 ...
update-alternatives: using /usr/bin/tightvncserver to provide /usr/bin/vncserver (vncserver) in auto mode
update-alternatives: using /usr/bin/Xtightvnc to provide /usr/bin/Xvnc (Xvnc) in auto mode
update-alternatives: using /usr/bin/tightvncpasswd to provide /usr/bin/vncpasswd (vncpasswd) in auto mode

설치가 다 되었다면, 이제 실행을 해 보자.
% tightvncserver

You will require a password to access your desktops.

Password:
Verify:
Would you like to enter a view-only password (y/n)? n

New 'X' desktop is ubuntu:1

Creating default startup script /home/ck0911/.vnc/xstartup
Starting applications specified in /home/ck0911/.vnc/xstartup
Log file is /home/ck0911/.vnc/ubuntu:1.log

맨 처음 실행하는 것이라면, 암호를 설정하라고 뜬다.
암호는 vnc 에 로그인할때 사용하는 것이므로 알맞게 입력한다.
혹시 나중에 다시 암호를 변경할 수도 있다.
% tightvncpaswd

서버가 잘 실행되었는지 확인해 보자.
% ps -ef | grep vnc

tightvnc 를 실행했을 때, ubuntu:1
ps 를 실행했을 때, tightvnc:1
모두 숫자 1을 출력하는것을 볼 수 있다.
저 숫자 1을 기억해야 한다.
그래서 저 숫자 1에 해당하는 session 에 접속해야 한다.

그러면 session 을 여러개 띄울 수 있는것인가?
그렇다. tightvnc 를 다시 실행하면 session 을 여러개 띄어서
여러개의 가상 화면을 사용할 수 있다.

% tightvncserver

New 'X' desktop is ubuntu:2

Starting applications specified in /home/ck0911/.vnc/xstartup
Log file is /home/ck0911/.vnc/ubuntu:2.log

오~ 2번째 session 이 생성되었다.

아무튼, 일단 session 1 에 접속해 보자.
"IP주소:숫자" 형식으로 접속을 한다.


만약 접속이 안된다면, 포트가 막혀있는 것이다.


공유기 혹은 virtual box 같은 가상화를 사용하고 있다면,
반드시 포트 포워딩을 해줘야 한다.
사용하는 포트가 몇번인지 확인해 보자.
% netstat -nap

(Not all processes could be identified, non-owned process info
 will not be shown, you would have to be root to see it all.)
Active Internet connections (servers and established)
Proto Recv-Q Send-Q Local Address           Foreign Address         State       PID/Program name
tcp        0      0 0.0.0.0:5901            0.0.0.0:*               LISTEN      1336/Xtightvnc
tcp        0      0 0.0.0.0:5902            0.0.0.0:*               LISTEN      1485/Xtightvnc

1번 session 은 5901 포트를, 2번 session 은 5902 포트를,
사용하고 있다는걸 확인할 수 있다.
만약 7번 session 이 열려 있다면, 5907 포트를 사용하게 된다.

※ 6001 포트와 6002 포트도 열려있는걸 볼 수 있는데, 이건 뭐하는건지 잘 모르겠다.

포트 포워딩을 설정하고 다시 접속을 시도해 보자.
접속이 된다면 이렇게 맹~한 화면이 나올것이다.


접속은 되었지만, 인터페이스가 실행되지 않았기 때문이다.

리눅스는 여러종류의 인터페이스가 존재하고,
자신이 원하는것을 설치하고 사용할 수 있다.
KDE, MATE, GNOME 등등

일단 기본적으로 GNOME 을 기반으로 실행해 보자.
인터페이스를 설치하자.
% sudo apt-get install gnome-panel gnome-settings-daemon metacity nautilus gnome-terminal

vnc session 에 접속했을 때, 인터페이스가 자동으로 실행되도록 해야 한다.
먼저 이미 실행되어 있는 session 을 닫는다.
% vncserver -kill :1

환경설정 파일을 수정하자.
% vi ~/.vnc/xstartup
맨 마지막 부분에 인터페이스를 추가 하자.

gnome-panel &
gnome-settings-daemon &
metacity &
nautilus &
gnome-terminal &

다시 실행하자.
% tightvncserver

다시 접속하자.


그러면 잘 뜨는걸 확인할 수 있다.
물론 GNOME 말고도 다른 인터페이스를 사용하려면,
환경설정 파일을 수정하면 된다.





출처
https://www.tightvnc.com
http://www.whatwant.com/840
http://glassylife.tistory.com/8

댓글 없음:

댓글 쓰기

화곡 어쩌라고, 굴사냥

석화찜(굴찜)을 먹으러 여의도로 갔다 그런데 재료가 모두 소진되었다고 마감이라고 한다 응? 다들 굴에 미쳤나? 굴을 찾아 헤매다 보니, 화곡까지 가게 되었다. 화곡은 처음 가본다. 첫인상은 "술집 겁네 많네" 피똥쌀때까지 마실 수 있...