라즈베리파이4 B 설치가이드(6) ssh와 vnc 연결하기

Updated:

라즈베리파이의 부팅이 성공하였으면, 원격 접속 방법인 ssh 와 vnc 연결을 설정해봅시다.

1. 라즈베리파이에 원격접속 방법

라즈베리파이의 부팅을 확인하고 나서는 바로 ssh나 vnc 연결을 설정하는 것이 좋습니다. ssh와 vnc를 이용하면 다른 컴퓨터를 사용하여 라즈베리파이에 접속을 하여, 이런 저런 명령어를 입력할 수 있는 원격접속 환경이 완성됩니다. 만약, 모니터를 사용하지 않을 경우라면, ssh나 vnc 설정 후에는 모니터 연결을 제거 할 수 있게 되겠지요.

  • SSH : 보통 터미널 접속으로 불림. 원격 컴퓨터에 안전하게 접속하기 위한 유닉스 기반의 명령 인터페이스 및 프로토콜.
  • VNC : GUI 화면을 원격으로 접속. RFB 프로토콜을 이용하여 원격으로 다른 컴퓨터를 제어하는 그래픽 테스크톱 공유 시스템.

라즈베리파이의 ssh, vnc 설정을 위해서 Raspberry Pi Configuration 메뉴를 실행합니다. 아래처럼 메뉴에서 Preference->Raspverry Pi Configuration을 선택합니다.

실행 후 Interfaces 탭을 확인하면, SSH와 VNC를 Enable 할 수 있습니다. 라즈베리파이의 HW 모듈 설정이 모두 이 곳에 있습니다. Camera 등 다른 모듈을 사용하려면 여기서 enable 가능합니다.

네트워크가 연결된 상태이면 이제 다른 컴퓨터에서 ssh와 vnc 연결이 가능합니다.

2. 라즈베리파이에 ssh 원격접속하기

다른 컴퓨터를 통해 라즈베리파이 ssh server에 접속해봅니다. 터미널 프로그램으로 ssh port 22번을 사용하여 접속하면 됩니다. ssh 초기 설정 port 번호가 22번이고, 변경 가능합니다. 계정 아이디와 암호는 초기 설정 상태면 pi / raspberry 입니다. 이미 변경하였다면 변경된 계정 정보를 사용합니다.

접속 테스트로 apt update와 upgrade를 실행해봅니다. apt update는 패키지 버전에 대한 정보를 최신으로 업데이트만 진행합니다.(실제 설치는 안함) apt upgrade는 현재 컴퓨터에 설치된 패키지 중에 업데이트된 버전이 있으면 실제로 업그레이드 설치를 진행합니다. 부팅 초기 세팅에서 update raspberry를 실행하였다면 업데이트 할 것이 별로 없습니다. 첫 업데이트이면 약 10분 가량 소요됩니다. apt update와 upgrade는 시스템의 패키지를 최신 버전으로 유지하는 기능을 하니 주기적으로 해주는 것이 좋습니다.

먼저 apt update 실행하고

#!/bin/bash
pi@raspberrypi:~ $ sudo apt update
Get:1 http://archive.raspberrypi.org/debian buster InRelease [25.2 kB]
Get:2 http://raspbian.raspberrypi.org/raspbian buster InRelease [15.0 kB]
Get:3 http://archive.raspberrypi.org/debian buster/main armhf Packages [259 kB]

그 다음, apt upgrade를 실행합니다.

#!/bin/bash
pi@raspberrypi:~ $ sudo apt upgrade
Reading package lists... Done
Building dependency tree... 50%

shell 접속을 확인하였으니, 이제 여러가지 명령어를 원격으로 실행할 수 있습니다.

참고. shell 접속으로 Raspberry Pi Configuration 메뉴 실행하기

shell 접속으로도 Raspberry Pi Configuration 메뉴를 실행할 수 있습니다. raspi-config 명령어를 실행하면 동일한 기능을 텍스트 기반으로 볼 수 있습니다. 아래처럼 $ sudo raspi-config 로 실행하면 됩니다.

#!/bin/bash
$ sudo raspi-config

아래는 Raspberry Pi Configuration 메뉴를 실행한 모습입니다.

3. 라즈베리파이에 vnc 원격접속하기

vnc 접속을 위해서는 라즈베리파이에 vnc server package가 설치되어 있어야 하는데, 지금은 Raspbian 이미지에 기본 포함입니다. 혹시 vnc server package에 문제가 있을 경우를 대비해, 아래 패키지 설치 명령어를 참고용으로 기재합니다. 문제가 없다면 따로 설치할 필요는 없습니다.

#!/bin/bash
$ sudo apt install realvnc-vnc-server realvnc-vnc-viewer

vnc 접속은 VNC viewer 프로그램을 사용하여, 라즈베리파이 ip를 입력해주면 로그인 화면을 나옵니다. id와 password를 입력하면 접속됩니다. 저는 VNC Viewer for Google Chrome을 사용하고 있습니다.

VNC viewer 프로그램은 RealVNC Download viewer에서 다운로드 가능합니다.

VNC를 통해서 라즈베리파이를 접속하면, 가상 컴퓨터 화면을 그대로 공유하고 사용할 수 있습니다.

vnc 연결은 GUI화면을 공유해서 보기 때문에 다소간의 지연은 생깁니다. 그래서 원격 접속은 주로 ssh 터미널을 통해서 하는 편입니다. CLI (Command Line Interface: 명령 줄 인터페이스)가 가볍고 속도가 훨씬 빠르죠.

3.1. vnc 원격접속 화면 출력 에러 - Cannot currently show the dekstop

모니터 없는 headless 방식으로 설치했는데.. vnc 화면이 나오지 않는 경우가 있습니다. 라즈베리파이4부터는 HDMI 케이블 연결이 없으면 vnc 연결에서 id와 password를 입력하여 로그인이 된 후 화면이 안나오게 됩니다. 이때, VNC viewer 쪽에서는 Cannot currently show the dekstop 문구만 나오게 됩니다. HDMI 케이블 연결이 없어도 기본 화면 송출을 위해서는 해상도 변경 설정이 필요합니다.

아래처럼 $ sudo raspi-config를 실행해서 해상도 변경 설정을 합니다.

#!/bin/bash
$ sudo raspi-config

메뉴는 7 Advanced Options -> A5 Resolution -> DMT Mode 85 1280x720 60Hz 16:9을 순서로 선택해서 설정하면 됩니다. 1280x720은 예시로 선택한 것이고, DMT(Display Monitor Timings, 모니터에서 사용되는 표준 방식)를 선택하면 동작합니다. 즉, DMT 설정 중에 마음에 드는 해상도를 선택하면 됩니다.

해상도 변경을 설정하고 재부팅을 하면 VNC 원격 접속 화면이 정상으로 출력됨을 볼 수 있습니다.


더 많은 라즈베리파이 이야기 Pi Guide 보러가기


Leave a Comment