본문 바로가기

SoftwareKnowledge

구글 원격 접속 (우분투)

수정 : 2024.12.3 우분투 20.04 추가

1. 원격 접속 정리

1.1 접속 운영체제 환경

윈도우 → 우분투

- 윈도우 간 구글 원격 접속은 크롬을 활용하면 바로 접속이 가능하다

- 하지만 윈도우에서 우분투로 바로 접속되지 않는다.

- 접속하기 위해서는 우분투 환경에서 추가적인 작업이 필요하다.

 

1.2 준비 사항

- 우분투 18.04 , 20.04 테스트 완료

- 우분투에 크롬 설치가 되어 있어야한다.

- wget 라이브러리도 설치가 되어 있어야한다.

sudo apt-get install wget

1.3 구글 원격 데스크톱 설치 방법

- 크롬 원격 프로그램을 다운 받는다.

wget http://dl.google.com/linux/direct/chrome-remote-desktop_current_amd64.deb

- 패키지를 설치한다.

sudo dpkg -i chrome-remote-desktop_current_amd64.deb

 

- 의존성 문제가 발생하는데 에러코드 보면서 패키지를 설치하면 된다.

→ 패키지를 설치해도 이런 에러 메시지가 뜬다

- 아래 명령어 사용하면서 계속 패키지 설치가 필요하다.

sudo apt --fix-broken install

 

- 크롬 원격 데스크탑을 설치해도 알수 없는 오류로 설정이 되지 않는데 이는 설정파일을 생성해주어야하기 때문이다. 아래 명령어를 통해 크롬 원격 데스크탑의 설정 폴더를 생성한다.

 

mkdir ~/.config/chrome-remote-desktop

- 크롬 종료 후 재실행하면 원격 액세스를 설정이 활성화되며 컴퓨터 이름와 PIN 번호를 설정하여 사용한다.

 

- 여기서, 우분투 20.04는 크롬 재실행하면 다음과 같이 뜬다.

 

- ssh 설정 해줘야 다음으로 넘어갈 수 있다.

 

- 다른 컴퓨터 설정' 에서 다음, 승인 클릭한다.

 

- 데비안 리눅스 부분의 명령어 복사 후 터미널에 붙여넣기 한다

- SSH 설정되며 PIN 번호 설정 가능하다


 

 

Black screen이 떠서 마우스 커서만 보이면 GPU 호환이 되지 않는 것이므로 크롬의 설정에서 하드웨어 가속(Hardware acceleration)을 사용하지 않도록 한다.

위 방법으로 되지 않는다면 다음 명령을 통해 해결한다.

1. 사용자 계정을 chrome-remote-desktop 그룹에 추가한다. (username은 로그인 계정명)

sudo usermod -a -G chrome-remote-desktop username
  • usermod: group 'chrome-remote-desktop' does not exist
  • 위의 에러가 뜨면 더 이상 진행하지 않아도 무방하다

2. 설정 변경을 위해 크롬 원격 데스크탑을 정지한다.

/opt/google/chrome-remote-desktop/chrome-remote-desktop--stop

3. 문제 발생시 복구를 위해 크롬 원격 데스크탑 설정 파일을 백업한다.

sudo cp /opt/google/chrome-remote-desktop/chrome-remote-desktop /opt/google/chrome-remote-desktop/chrome-remote-desktop.orig

4. 현재 디스플레이의 번호를 확인한다.

echo $DISPLAY

5. 설정파일을 열어 내용을 수정한다.

sudo gedit /opt/google/chrome-remote-desktop/chrome-remote-desktop
FIRST_X_DISPLAY_NUMBER = 0
  • echo $DISPLAY 결과로 숫자 변경
def get_unused_display_number():
    display = FIRST_X_DISPLAY_NUMBER
    # while os.path.exists(X_LOCK_FILE_TEMPLATE % display):
    #     display += 1
    return display
  • 주석처리
# while os.path.exists(X_LOCK_FILE_TEMPLATE % display):
# display += 1
def launch_session(self, x_args):
    self._init_child_env()
    self._setup_pulseaudio()
    self._setup_gnubby()
# self._launch_x_server(x_args)# if not self._launch_pre_session():# If there was no pre-session script, launch the session immediately# self.launch_x_session()
    display = self.get_unused_display_number()
    self.child_env["DISPLAY"] = ":%d" % display
  • 주석처리한다
# self._launch_x_server(x_args)
# if not self._launch_pre_session():
# self.launch_x_session()
  • 2줄을 추가한다.
display = self.get_unused_display_number()
self.child_env["DISPLAY"] = ":%d" % display

6. 크롬 원격 데스크탑을 다시 실행한다.

 

우분투 18.04
우분투 20.04

 

'SoftwareKnowledge' 카테고리의 다른 글

Pytorch에서 TensorRT 엔진 생성  (0) 2023.03.19
구글 드라이브 자료 wget 으로 받는 방법  (0) 2023.03.19
프로세스와 스레드  (0) 2023.03.19