Microsoft MVP성태의 닷넷 이야기
글쓴 사람
정성태 (techsharer at outlook.com)
홈페이지
첨부 파일
 
(연관된 글이 1개 있습니다.)

윈도우 클라이언트에서 X2Go를 이용한 원격 리눅스의 GUI 접속 - 우분투 20.04

아래의 글에서는 Xming을 이용한 방법을 소개하고 있는데요,

Windows 10에서 리눅스용 프로그램 설치하고 실행하기
; https://medium.com/wslhub/windows-10%EC%97%90%EC%84%9C-%EB%A6%AC%EB%88%85%EC%8A%A4%EC%9A%A9-%ED%94%84%EB%A1%9C%EA%B7%B8%EB%9E%A8-%EC%84%A4%EC%B9%98%ED%95%98%EA%B3%A0-%EC%8B%A4%ED%96%89%ED%95%98%EA%B8%B0-2cb0d7892d12

색다르게 X2Go를 이용해 우분투 시스템에 GUI 원격 접속을 해보겠습니다. 이를 위해 클라이언트 측과 서버 측에 각각 설정이 필요한데요, 우선 서버인 우분투 측에서는 다음과 같이 설치를 하면 됩니다.

// 우분투 버전 확인 후,

$ lsb_release -a

// 이전 버전에서는 다음의 작업이 필요하다고 하는데, 20.04에서는 필요 없습니다.

// Ubuntu 10.04 or 12.04
sudo apt-get install python-software-properties

// Ubuntu 14.04
sudo apt-get install software-properties-common

$ sudo add-apt-repository ppa:x2go/stable
$ sudo apt-get update
$ sudo apt-get install x2goserver x2goserver-xsession

// 정상적으로 실행까지 되었는지 확인
$ service x2goserver status

이후 윈도우에서는 다음의 사이트를 통해,

X2Go - everywhere@home
; https://wiki.x2go.org/doku.php

윈도우 용 클라이언트(X2Go Client)를 설치 후, 실행하면 다음과 같이 로그인 정보를 입력할 수 있는 화면이 나옵니다.

x2go_1.png

보다시피, (SSH 로그인에서 너무나 일상적으로 사용했던) Host, Login, SSH port 등의 정보를 입력 후 접속하면 아래와 같은 윈도우 창이 뜨면서 접속이 되는 것을 확인할 수 있습니다.

x2go_2.png

마치, mstsc.exe로 RDP 접속을 한 것과 유사합니다. (그 외에, Xming처럼 단일 응용 프로그램을 호스팅하는 등의 방법도 있습니다.)




x2go로 로그인했는데 다음과 같은 오류 메시지 창이 나오며 다시 로그인으로 돌아간다면?

unable to execute: startkde

또는,

unable to execute: xfce4-session

해당 Ubuntu 시스템에 KDE 또는 XFCE4 shell를 설치한 적이 없기 때문입니다. 다음과 같은 명령어로 설치한 후 다시 시도하면 됩니다.

[kde shell 설치]
$ sudo apt install kde-full

[xfce shell 설치]
$ sudo apt install xfce4

만약 이미 우분투 측에 GNOME(또는 다른 shell)이 설치되어 있다면 KDE 설치 도중 다음과 같은 질문을 합니다.

Configuring sddm
----------------

A display manager is a program that provides graphical login capabilities for the X Window System.

Only one display manager can manage a given X server, but multiple display manager packages are installed. Please select which 
display manager should run by default.

Multiple display managers can run simultaneously if they are configured to manage different servers; to achieve this, configure the 
display managers accordingly, edit each of their init scripts in /etc/init.d, and disable the check for a default display manager.

1. gdm3  2. lightdm   3. sddm

GDM3은 Gnome의 Display Manager이고, lightdm은 XFCE4, SDDM은 KDE를 위한 것입니다. Display Server는 다중으로 설치될 수 있지만, 그 중 하나에서만 X server를 관리할 수 있다는 것이므로 원하는 GUI shell 유형을 선택합니다.

만약 나중에라도 또 바꾸고 싶다면 다음과 같이 명령을 내리면 됩니다.

// gdm3로 변경
$ sudo dpkg-reconfigure gdm3
$ systemctl stop sddm  // 또는 lightdm
$ systemctl start gdm3

// sddm으로 변경
$ sudo dpkg-reconfigure sddm
$ systemctl stop gdm3  // 또는 lightdm
$ systemctl start sddm

// lightdm으로 변경
$ sudo dpkg-reconfigure lightdm
$ systemctl stop gdm3  // 또는 sddm
$ systemctl start lightdm

그런데, 제 경우에는 KDE를 설치한 후에도 여전히 "unable to execute: startkde" 오류 메시지가 발생했습니다. 반면 xfce의 경우에는 설치 후 정상적으로 동작했습니다.

참고로, "Session preferences" 화면의 하단에 있는 "Session type"에서 접속할 Shell 모드(GNOME, UNITY, ...)를 선택할 수 있습니다.




그나저나, x2go에 대한 신뢰를 Azure에서 호스팅 중인 Linux VM에 기본 포함되어 있다는 것에서 얻을 수 있습니다. ^^

Quickstart: Set up the Data Science Virtual Machine for Linux (Ubuntu)
; https://docs.microsoft.com/en-us/azure/machine-learning/data-science-virtual-machine/dsvm-ubuntu-intro




[이 글에 대해서 여러분들과 의견을 공유하고 싶습니다. 틀리거나 미흡한 부분 또는 의문 사항이 있으시면 언제든 댓글 남겨주십시오.]

[연관 글]






[최초 등록일: ]
[최종 수정일: 1/30/2021]

Creative Commons License
이 저작물은 크리에이티브 커먼즈 코리아 저작자표시-비영리-변경금지 2.0 대한민국 라이센스에 따라 이용하실 수 있습니다.
by SeongTae Jeong, mailto:techsharer at outlook.com

비밀번호

댓글 작성자
 




1  2  3  [4]  5  6  7  8  9  10  11  12  13  14  15  ...
NoWriterDateCnt.TitleFile(s)
13843정성태12/13/20244393오류 유형: 938. Docker container 내에서 빌드 시 error MSB3021: Unable to copy file "..." to "...". Access to the path '...' is denied.
13842정성태12/12/20244538디버깅 기술: 205. Windbg - KPCR, KPRCB
13841정성태12/11/20244866오류 유형: 937. error MSB4044: The "ValidateValidArchitecture" task was not given a value for the required parameter "RemoteTarget"
13840정성태12/11/20244440오류 유형: 936. msbuild - Your project file doesn't list 'win' as a "RuntimeIdentifier"
13839정성태12/11/20244878오류 유형: 936. msbuild - error CS1617: Invalid option '12.0' for /langversion. Use '/langversion:?' to list supported values.
13838정성태12/4/20244609오류 유형: 935. Windbg - Breakpoint 0's offset expression evaluation failed.
13837정성태12/3/20245074디버깅 기술: 204. Windbg - 윈도우 핸들 테이블 (3) - Windows 10 이상인 경우
13836정성태12/3/20244631디버깅 기술: 203. Windbg - x64 가상 주소를 물리 주소로 변환 (페이지 크기가 2MB인 경우)
13835정성태12/2/20245071오류 유형: 934. Azure - rm: cannot remove '...': Directory not empty
13834정성태11/29/20245306Windows: 275. C# - CUI 애플리케이션과 Console 윈도우 (Windows 10 미만의 Classic Console 모드인 경우) [1]파일 다운로드1
13833정성태11/29/20244981개발 환경 구성: 737. Azure Web App에서 Scale-out으로 늘어난 리눅스 인스턴스에 SSH 접속하는 방법
13832정성태11/27/20244922Windows: 274. Windows 7부터 도입한 conhost.exe
13831정성태11/27/20244383Linux: 111. eBPF - BPF_MAP_TYPE_PERF_EVENT_ARRAY, BPF_MAP_TYPE_RINGBUF에 대한 다양한 용어들
13830정성태11/25/20245205개발 환경 구성: 736. 파이썬 웹 앱을 Azure App Service에 배포하기
13829정성태11/25/20245180스크립트: 67. 파이썬 - Windows 버전에서 함께 설치되는 py.exe
13828정성태11/25/20244452개발 환경 구성: 735. Azure - 압축 파일을 이용한 web app 배포 시 디렉터리 구분이 안 되는 문제파일 다운로드1
13827정성태11/25/20245105Windows: 273. Windows 환경의 파일 압축 방법 (tar, Compress-Archive)
13826정성태11/21/20245340닷넷: 2313. C# - (비밀번호 등의) Console로부터 입력받을 때 문자열 출력 숨기기(echo 끄기)파일 다운로드1
13825정성태11/21/20245672Linux: 110. eBPF / bpf2go - BPF_RINGBUF_OUTPUT / BPF_MAP_TYPE_RINGBUF 사용법
13824정성태11/20/20244753Linux: 109. eBPF / bpf2go - BPF_PERF_OUTPUT / BPF_MAP_TYPE_PERF_EVENT_ARRAY 사용법
13823정성태11/20/20245305개발 환경 구성: 734. Ubuntu에 docker, kubernetes (k3s) 설치
13822정성태11/20/20245175개발 환경 구성: 733. Windbg - VirtualBox VM의 커널 디버거 연결 시 COM 포트가 없는 경우
13821정성태11/18/20245096Linux: 108. Linux와 Windows의 프로세스/스레드 ID 관리 방식
13820정성태11/18/20245254VS.NET IDE: 195. Visual C++ - C# 프로젝트처럼 CopyToOutputDirectory 항목을 추가하는 방법
13819정성태11/15/20244491Linux: 107. eBPF - libbpf CO-RE의 CONFIG_DEBUG_INFO_BTF 빌드 여부에 대한 의존성
13818정성태11/15/20245305Windows: 272. Windows 11 24H2 - sudo 추가
1  2  3  [4]  5  6  7  8  9  10  11  12  13  14  15  ...