안녕하세요, 메이아이의 Engineer 고강련입니다.
이번에는 개발자라면 한 번쯤은 들어보셨을 법한 ‘라즈베리파이(Raspberry Pi)’라는 작은 기기의 세팅 방법에 대해 소개하고자 합니다. 항시 돌아가야 하는 서버가 필요할 때, 파워풀한 성능을 요구하지는 않지만 간단한 웹서핑과 프로그래밍 등의 교육을 할 때, 자신만의 임베디드 기기를 만들고 싶을 때 우리는 쉽게 라즈베리파이라는 소형 컴퓨터를 생각할 수 있습니다. 시중의 미니 PC보다는 성능이 낮지만 5만 원이라는 합리적인 가격으로 컴퓨터가 생기게 되는 것이니까요 :)
이런 하드웨어를 접할 때 가장 힘들었던 부분은 세팅을 하는데 소요되는 시간이 많이 든다는 점이었습니다. ‘나는 빨리 개발을 하고 싶은데 세팅은 왜 이렇게 힘들고, 도대체 프로그램은 어디서 설치하라는 거야?’라고 생각하시는 개발보다 세팅과 검색에 더 많은 시간을 소요하게 될 개발자분들을 위해 라즈베리파이를 한 번에 세팅하는 방법을 가져왔습니다.
이 포스팅에 따라 세팅을 진행하신다면 NOOBS 다운로드부터 라즈비안 설치, 언어 설정, SSH, 와이파이 설정까지 한 번에 할 수 있을 것입니다. 본격적인 세팅법에 앞서 꼭 필요한 것들을 준비해 주세요.
- Raspberry Pi 3 Model B+ 또는 Raspberry Pi 4 Model B
- 4GB 이상의 sd 카드 + sd 카드 컨버터
sd카드 포맷
운영체제를 설치하기 전에 sd 카드 포맷을 진행해 봅시다. 라즈베리파이의 부트로더가 FAT16, FAT32 등의 FAT 파일 시스템을 사용하기 때문에 이 포스팅에서는 format을 두 번 진행하게 됩니다.
SD Card Formatter 설치, 실행하기
아래의 링크에서 Formatter를 설치하세요.
sd카드를 컴퓨터에 넣고, 설치한 SD Card Formatter를 실행합니다. 그다음, 포맷할 카드를 선택합니다. 여기서 주의할 점은 선택된 경로가 진짜로 sd 카드의 경로인지 꼭 확인하셔야 한다는 점입니다. 원치 않은 정보가 삭제될 수도 있으니 유의해 주세요. 정상적으로 작동할 경우 오른쪽과 같은 모습이 나올 것입니다.
FAT32 Format 설치, 실행하기
아래의 링크에서 FAT32 Format을 설치하세요.
File system이 ‘exFAT’일 경우 ‘FAT32’로 변경하기 위해 실행해 줍니다. 1)의 오른쪽 사진처럼 ‘File system: FAT32’라고 나온다면 그대로 진행하셔도 되지만, 간혹 아래처럼 ‘File system: exFAT’이라고 나오는 상황이 있을 때는 아래의 프로그램을 사용해 ‘FAT32’로 변경해 주어야 합니다.
NOOBS로 Raspbian 설치하기
NOOBS 다운로드하기
NOOBS 파일을 다운로드해 주세요. 여기를 누르면 바로 다운로드가 됩니다. 다운로드한 NOOBS 폴더를 압축 해제 후 파일을 옮깁니다. 아래 이미지처럼 포맷한 sd 카드에 NOOBS 이름이 적힌 폴더가 아닌 그 폴더 내의 20여 개의 항목을 전부 옮겨주세요.
라즈베리파이에 sd card 삽입 후 부팅 시도
라즈베리파이4에서 무지개 화면에서 넘어가지 않을 경우 HDMI를 전원에서 가장 가까운 곳에 연결했는지 확인하세요. 그다음 라즈베리파이에 sd card 삽입하고, 첫 번째 Raspbian [RECOMMENDED] 선택, [yes]를 눌러서 Install 합니다. 화면은 일부 다를 수 있으니 참고해 주세요.
아래의 화면이 나온다면 Install 중인 것입니다. 약 20분 ~ 1시간가량이 소요되니, 느긋하게 기다려 주세요. 이후, 우측의 화면이 나온다면 [OK]를 눌러 완료해 주세요. 재부팅 후 라즈비안으로 부팅됩니다.
라즈비안 설정하기 (언어, SSH & VNC, wifi, 고정 ip 설정)
먼저 초기 설정을 진행합니다. Country : [South Korea], Language : [Korean], Timezone : [Seoul] 선택 후 [Next]를 클릭해 주세요. 이어서 비밀번호를 설정해 주세요. 초기설정을 마치면 재부팅이 됩니다.
이어서 언어를 설정합니다. 초기 설정 후 재부팅이 되면 글자가 깨져 있는 것을 볼 수 있습니다. 그 화면은 VNC를 연결하지 못해 캡처하지 못했으나, 글자가 “□□□□□□” 이런 형태로 보이곤 하는데요. 그럴 때는 [Preferences] — [Raspberry Pi Configuration]을 클릭해 주세요.
그다음, [Localisation] 에서 [Set Locale…] — [en(English)], [US(United States)], [UTF-8] — [OK] 클릭해 주세요. 이어서 [Set Wifi Country]에서 [US]로 변경 — [OK] 클릭해 주세요. 와이파이는 US가 아닐 경우 잡히지 않을 수 있어, 미리 설정해 줍니다. 위의 설정을 완료한 후에 재부팅이 됩니다.
여기까지 진행된 뒤에는 SSH, VNC를 허용해 줍니다. 라즈베리파이를 본격적으로 사용하기 위해 SSH와 VNC는 빠질 수 없는 기능이거든요. [Raspberry Pi Configuration] — [Interfaces]에서 [SSH], [VNC] Enable를 클릭합니다. 파이캠 등 웹캠을 연결해 사용하시려면 [Camera]도 설정해 주세요.
그다음, 와이파이를 설정합니다. 오른쪽 위의 [↑↓] 이렇게 된 표시를 클릭합니다. 본인이 사용할 와이파이를 선택 후, 비밀번호를 입력해 연결합니다. 와이파이 연결이 안 될 경우 [Preferences] — [Raspberry Pi Configureation] — [Localisation] — [WiFi Country] 에서 Country가 US United States 인지 확인하세요. 와이파이는 US일 경우에 사용 가능합니다. 와이파이 연결이 잘 될 경우 아래와 같이 바뀔 것입니다.
마지막으로 고정 ip를 설정합니다. 상단의 와이파이 모양 또는 랜선 모양의 아이콘에서 [마우스 오른쪽 버튼] — [Wireless & Wired Network Settings] 클릭- [eth0] 클릭- 고정 ip 할당 위한 정보를 입력해 주세요.
IPv4 Address 입력 시 192.168.0.0 를 입력하면 안 되고, 192.168.0.0/24 같이 숫자를 같이 입력해 주어야 합니다. (상단 와이파이 아이콘에 마우스를 갖다 대면 보입니다.) 위의 GUI를 사용하는 방법 외에 CLI를 사용해서도 가능합니다! '/etc/dhcpcd.conf' 에 들어가 아래의 내용을 입력하세요.
꼭 필요하지는 않지만 알아두면 좋은 것들
VNC Viewer로 라즈베리파이 접속하기
라즈베리파이에 접속하고 싶은 본인의 컴퓨터에 VNC Viewer를 설치합니다. 아래처럼 라즈베리파이의 ip 주소를 입력하면 접속할 수 있습니다.
모니터 없이 GUI 부팅 되도록 설정
VNC Viewer로 라즈베리파이에 접속하고 싶은데, 모니터 없이 라즈베리파이가 부팅된다면 해상도를 찾지 못해 VNC Viewer에도 보이지 않는 경우가 있습니다. 그럴 때는 다음의 방법으로 해결할 수 있습니다. 우선 '/boot/config.txt'에 들어가 아래의 주석을 해제합니다.
위의 방법대로 하면 default 해상도를 받아서 해상도가 엄청 낮게 보입니다. 아래 방법대로 해상도를 변경합니다. [Preferences] — [Raspberry Pi Configuration] 클릭해 주세요. 그다음, [Display] 탭의 [Set Resolution]를 클릭하고, 여러 해상도 중에 원하는 것 선택 후 변경해 주세요.
이제 HDMI 없이 VNC로 접속해도 해상도가 변경된 채로 나옵니다.
한글 나오도록 추가하기
아래의 명령어를 입력합니다.
그 다음 재부팅을 해 주세요.
블루투스 마우스 반응 느려짐 해결하기
라즈베리파이에 블루투스 마우스를 연결할 경우 마우스 포인터가 너무 느리게 진행한다거나, 반응이 느린 경우가 있습니다. 그럴 때는 우선 '/boot/cmdline.txt' 파일을 열어 아래의 내용을 입력합니다.
그 후 재부팅을 하면 마우스 포인터가 정상적인 속도가 되었음을 확인하실 수 있습니다.
마치며
지금까지 NOOBS로 라즈베리파이에 라즈비안을 설치하는 방법에 대해 알려드렸습니다. 여러 번의 시도 후에 가장 확실한 방법만을 다룬 내용들이니 라즈베리파이를 원하는 대로 세팅하실 수 있을 것입니다.
이어지는 포스팅에서는 다른 운영체제 중 하나인 Ubuntu 20.04 LTS를 설치하는 방법을 가져오겠습니다. 개발자분들의 원활한 라즈베리파이 세팅을 기원합니다!