1. Raspbian (Raspberry Pi OS)특징 설치 방법기본 설정2. Ubuntu Mate특징설치 방법기본 설정3. Ubuntu (Server / Desktop)특징설치 방법기본 설정
라즈베리파이에서 사용할 수 있는 OS는 다양하다. 그 중에서도 많이 사용하거나 권장할 만한 라즈베리파이용 OS를 소개하고자 한다.
1. Raspbian (Raspberry Pi OS)
특징
- 라즈베리파이에서 가장 많이 사용하고, 기본적으로 권장되는 OS이다.
- 다만 현시점에서는 ROS2 설치가 지원되지 않아서 우분투를 설치하는 경우가 있다.
- 라즈베리파이에 최적화되어 설계되어 있고,
raspi-config
를 통해서 라즈베리파이를 관리할 수 있다. - 다른 OS와 달리 구형 라즈베리파이에서도 원활히 작동이 된다.
설치 방법
- 라즈베리파이 OS는 상당히 편리하게 설치할 수 있다.
- 과거에는 라즈베리파이 사이트에서 이미지를 제공하여, 별도의 프로그램으로 SD카드에 이미지를 구워야만 하였다.
- 현재는 단순히 공식 홈페이지에서 전용 프로그램을 다운받은 후, 해당 프로그램으로 이미지를 설치하면 된다.
- https://www.raspberrypi.com/software/에서 전용 프로그램인
Raspberry Pi Imager
을 다운받을 수 있다.
- 이미지 설치 시 별도의 설정을 통해서, 계정명 및 비밀번호 설정, SSH 활성화 여부 및 네트워크 설정(SSID 및 비밀번호) 등을 OS 설치 전에 미리 설정할 수 있다.
- 계정 비밀번호 등록시에 숫자 없이 문자로만 비밀번호를 설정하여야 OS가 정상적으로 구동된다.
ssh
파일 및wpa_supplicant.conf
을 별도로 설정하지 않아도, OS 이미지 설치 후에 키보드와 마우스 없이 즉시 접속이 가능하다. 😊
프로그램의 설정 스크린샷은 여기를 참고해주세요.
기본 설정
ssh
와vnc
모두 기본적으로 셋업이 되어 있어서, 다른 OS와 달리 편하게 사용할 수 있다.- 다만
vnc
는raspi-config
를 통해 활성화한 이후에 재부팅을 하여야만 사용할 수 있다.
xrdp
를 설치하여 윈도우의 원격 접속 프로그램을 활용하여 원격 제어도 가능하다.vnc
에 비해서 상대적으로 속도가 느리고, 1대의 컴퓨터만 점유할 수 있다는 단점이 있어서 권장하지는 않는다.
- 파이썬에서 GPIO 제어는
RPi.GPIO
라이브러리를 사용하면 된다.
2. Ubuntu Mate
특징
- 우분투 관련 패키지를 사용할 수 있으면서도, 라즈베리파이에 최적화되어 있는 OS이다.
raspi-config
명령어를 사용할 수 있다.- 라즈베리파이 3B+로 테스트하였을때, Ubutu Desktop에서는 버벅이는 경우가 많았지만 Ubuntu Mate에서는 제법 원활하게 구동되었다.
- 현시점(2022/12/12)을 기준으로 Ubuntu 18.04 이미지를 다운받아서 설치해야만 라즈베리파이에서 부팅이 된다.
- Ubuntu Mate로 Ubuntu 20.04 이상의 OS를 사용하기 위해서는, Ubuntu 18.04로 설치한 후 라즈베리파이에서 OS 업데이트를 하여야 사용이 가능하다.
- 라즈베리파이에서 OS를 업데이트하는 것은 최신 OS 이미지를 설치하는 것보다 상당히 많은 시간이 소요된다.
설치 방법
- https://releases.ubuntu-mate.org/로 접속한 뒤에, 원하는 버전의 OS를 다운받아 설치한다.
- 참고로 라즈베리파이의 권장 아키텍쳐는
armhf
혹은arm64
이다. - 라즈베리파이 3B+ 이하는
armhf
, 라즈베리파이 4부터는arm64
를 권장한다. - ubuntu-mate-18.04.2-beta1-desktop-armhf+raspi-ex4.img.xz 이미지는 라즈베리파이 3B+와 4에서 정상적으로 부팅되는 것을 확인하였다.
기본 설정
- 라즈비안과 다르게 ssh, vnc를 사용하려면 별도의 패키지를 설치하여 설정하여야 한다.
- ssh를 사용하려면,
openssh-server
패키지를 설치하여야 한다. - vnc를 통해서 원격으로 제어하려면
x11vnc
패키지를 사용하면 된다. - 설치 및 설정은 https://omar2cloud.github.io/rasp/x11vnc/를 참고하였다.
- 파이썬에서 GPIO를 제어하고자 하면 라즈비안과 동일하게
RPi.GPIO
를 사용하면 된다.
3. Ubuntu (Server / Desktop)
특징
- 리눅스 중에서 유명한 배포판으로, 가장 사용성이 높은 리눅스 OS이다.
- 유니티, ROS2 등 많은 프로그램에서 리눅스 배포시에 우분투를 지원해주고 있다.
- Ubuntu로 Server 버전과 Desktop 버전이 있다.
- Server는 CUI 형식으로 명령어를 입력하여 제어할 수 있는데, 별도의 패키지를 설치하여 데스크탑 버전으로 사용할 수 있다.
- Desktop 버전은 GUI 방식으로 초보자도 편리하게 우분투를 사용할 수 있는데, 다만 기본 이미지가 용량이 커서 설치시에 많은 시간이 소요된다.
- 라즈베리파이4에서는 우분투가 원활히 구동되지만, 구형 라즈베리파이에서는 버벅이면서 작동이 되기 때문에 권장하지 않는다.
설치 방법
Raspberry Pi Imager
에서 우분투 배포판도 제공해주고 있어서, 편리하게 설치할 수 있다.- 운영체제 선택시, Other general-purpose OS > Ubuntu로 들어가서 원하는 버전의 Ubuntu를 설치하면 된다.
- 우분투 공식 홈페이지의 다운로드 페이지에서 이미지를 다운받아서, 별도의 프로그램을 통해서 이미지를 설치하여도 된다.
기본 설정
- ssh는
openssh-server
를 설치하여 활용할 수 있다.
- 최신 우분투 버전부터는 데스크톱 내부의 설정를 통해서 원격 제어가 가능하다.
- Settings > Sharing > Screen Sharing 메뉴에서 원하는 설정을 적용하면 된다.
- 윈도우용 원격제어는 물론이고, vnc 프로토콜도 지원하고 있다.
- 파이썬을 활용한 GPIO 제어는
python3-lgpio
을 사용하면 된다. - 우분투 공식 홈페이지에서 예제를 제공하고 있다.