그리고 본 구현은 x-desktop 구현이 가능한 가상머신 환경을 그 베이스 기반으로 하여 구현해 볼 것이다.
가장 먼저 테스트할 가상 머신이나 chroot 내서버가 준비되어 있어야 하며 그 안에서 몇가지 선 작업이 필요하다.
---- 호스트 ----
먼저 원격 모듈 서비스인 'ssh'가 설치 되어 있지 않다면 설치가 필요하다.
user@user~$ |
sudo apt-get install ssh |
다음은 ssh 서버 환경 파일을 편집해야 한다.
user@user~$ |
sudo nano /etc/ssh/sshd_config |
X11Forwarding
부분을
X11Forwarding yes
로 바꾸어 주면 된다.
이제 접속 클라이언트 측에서 X-Display를 활용하여 구동하여 보자.
---- 클라이언트 ----
-X 옵션을 통하여 ssh 명령을 실행한다.
user@user~$ |
ssh -X test@192.168.0.3 |
접속이 되었다면 GUI를 지원하는 프로그램을 실행해 보자.
test@user~$ |
firefox |
정상적으로 GUI가 뜬다면 환경변수인 $DISPLAY가 ' :10.0 ' 으로 되어 있을 것이다.
확인해 보자.
test@user~$ |
echo $DISPLAY :10.0 |
하지만 만일 원격 서버의 환경 변수를 디폴트값인 ' :0.0 ' 으로 바꾼다면
test@user~$ |
export DISPLAY=:0.0 |
test@user~$ |
firefox |
해당 프로그램의 GUI창이 클라이언트 쪽이 아닌 원격서버(가상머신)에 뜨는 것을 확인 할수가 있다.
----------
- 예외 -
1. 만일 호스트측에서도 완벽하게 셋팅을 마쳤는데도 불구하고 X11 포워딩이 되지 않는다면 클라이언트측의 ssh 환경설정을 바꿔줘야 하는 경우가 있다.
먼저 ' /etc/ssh/ssh_config ' 파일을 확인해 보자.
user@user~$ |
cat /etc/ssh/ssh_config |grep ForwardX11 ForwardX11Trusted no |
위와 같이 나왔다면
ForwardX11Trusted no
를
ForwardX11Trusted yes
로 바꾸어 줘야 한다.
2. 그리고 만약에 해당 서버가 x-desktop 구동 모듈이 설치 되어 있지 않다면
x11 구동 모듈을 전부 설치할 필요가 없이 'xauth' 패키지만 설치해 주면 된다.
(단, xauth 패키지와 '~/.Xauthority' 파일이 존재 하면 '~/.Xauthority' 파일만 새로 만들어 주면 된다.)
user@user~$ |
sudo apt-get install xauth |
'~/.Xauthority' 파일을 만들어 준다.
user@user~$ |
touch .Xauthority |
도움이 되셨다면 '♡' 버튼을 꼭눌러 주시면 감사 하겠습니다.
그리고 글에 부족한 점이 있거나 틀린 점, 더 궁금한 부분이 있는 것 같다면 꼭 댓글로 알려 주시면 감사 하겠습니다.
'리눅스 기초 가이드 > UNIX 시스템 ' 카테고리의 다른 글
[리눅스 가이드] 리눅스 콘솔-터미널 환경에서 자체 서버를 이용하여 간편하게 이메일을 발송해 보자. (0) | 2017.12.31 |
---|---|
[리눅스 가이드] 리눅스에 Nvidia 정식 배포 드라이버 완벽 설치 하는 방법 - update0.2 (0) | 2017.09.26 |
[ 리눅스 시스템 가이드] 리눅스를 이용한 하드 디스크 완전삭제 정말 가능할까? (실험) (0) | 2017.05.23 |
[리눅스 가이드] 리눅스 터미널(콘솔)에서 자동완성 기능을 활용하자. (0) | 2017.02.20 |
[리눅스 가이드] ps를 통한 프로세스 확인 및 강제종료 그리고 프로세스 이름으로 종료 하기 (0) | 2017.02.01 |