지난 2월에 한국에서 구입했는데 다시 호주로 오기 전까지 배송이 안되서 결국 들고 오질 못했었는데 집에서 택배와 함께 보내줘서 이제야 개봉해보고 살펴보게 되었다.

라즈베리 파이는 영국의 Rasberry Pi Foundation에서 교육 용도로 개발한, 신용카드 사이즈의 컴퓨터로 USD 35달러라는 저렴한 가격에 판매하고 있다. 교육용 외에도 다양한 분야에서 활용하고 있어 보급형 개발보드의 새로운 세계를 열었다는 좋은 평을 받고 있다.

raspberry pi 2 model B

구입한 라즈베리 파이 2 Model B는 2015년 2월에 출시한 보드로 전 모델에 비해 업그레이드 된 모델이다. 사양은 다음과 같다.

  • Quad core broadcom BCM2836 CPU with 1GB RAM
  • 40pin extended GPIO
  • Micro SD slot
  • Multiple Ports: 4 USB ports, Full size HDMI, 4 pole Stereo output and Composite video port, CSI camera port & DSI display port
  • Micro USB power source

라즈베리파이 웹사이트 문서를 참고해 설치했는데 교육용 개발보드답게 문서화가 아주 잘되어 있어서 환경 구축에 큰 어려움이 없었다.

라즈베리파이 자체로는 사실 할 수 있는게 없어 몇 가지 부속이 더 필요하다. (요리사가 집 냉장고에서 대충 재료를 꺼내는 느낌으로) 내 부품 잡동사니에서 다음과 같은 부품을 찾았다. 다 가지고 있으면 본체만 구입하면 되겠지만 없다면 Starter Kit 같은 것도 판매하고 있다.

라즈베리 파이 2 Starter Kit 구입 링크

  • 8GB Micro SD, Micro SD reader (SKY라고 써져 있는데 이제 더이상 볼 수 없는 회사가 되어버렸다…)
  • iptime wifi USB (호주 처음 올 떄 가져왔으니 적어도 5년은 된 동글)
  • Micro USB 케이블
  • 흔한 이더넷 케이블 (랜선이라 부르는)
  • 애플 USB 충전기

다음은 라즈베리파이 웹사이트 문서에서 확인할 수 있는 내용으로 자세하게 보고 싶다면 문서를 참고하자. 이미지 세팅에는 mac 환경에서, 그 외에는 terminal SSH를 통해 라즈베리 파이에 접속해서 진행했다.

이미지 설치하기

먼저 사용하고 싶은 이미지를 라즈베리파이 웹사이트 다운로드 페이지에서 내려 받는다. 여기서는 Raspbian 이미지를 사용했다. zip 파일 압축을 해제하면 img 파일이 나오는데 이 이미지를 micro SD에 풀어준다. 그 img를 그대로 넣는게 아니라 명령어를 사용해서 넣어야 한다.

먼저 Micro SD를 SD 카드 어뎁터나 micro SD 리더기 등을 통해 맥에 연결한다. 그리고 터미널을 열어 diskutil list로 어느 경로로 마운트 되었는지 확인한다.

$ diskutil list
/dev/disk0
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:      GUID_partition_scheme                        *1.0 TB     disk0
   1:                        EFI EFI                     209.7 MB   disk0s1
   2:          Apple_CoreStorage                         999.7 GB   disk0s2
   3:                 Apple_Boot Recovery HD             650.0 MB   disk0s3
/dev/disk1
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:                  Apple_HFS Macintosh HD           *999.4 GB   disk1
                                 Logical Volume on disk0s2
                                 Unencrypted
/dev/disk2
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:     FDisk_partition_scheme                        *2.0 TB     disk2
   1:               Windows_NTFS My Passport             2.0 TB     disk2s1
/dev/disk3
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:     FDisk_partition_scheme                        *8.1 GB     disk3
   1:             Windows_FAT_32 Sky                     8.1 GB     disk3s1

내 경우는 /dev/disk3 인 것을 확인할 수 있었다. 이제 마운트되어 있는 디스크를 언마운트해야 한다.

$ diskutil unmountDisk /dev/<disk# from diskutil>
# 본인의 disk 번호를 확인 후 그 값을 넣어야 한다
# 예를 들면 diskutil unmountDisk /dev/disk3

그리고 이미지가 있는 경로에서 다음 dd 명령어로 이미지를 넣어준다.

sudo dd bs=1m if=/path/to/image.img of=/dev/<rdisk# from diskutil>
# 경로를 상황에 맞게 수정해야 한다
# 내 경우는 sudo dd bs=1m if=~/Downloads/2015-05-05-raspbian-wheezy.img of=/dev/rdisk3

원래 문서에서는 of=/dev/disk3로 입력하도록 하는데 disk는 버퍼로 인해 속도가 느리다고 한다. disk로 한참 기다려도 생각보다 오래 걸려 찾아보니 맥에서 disk는 정말 느리므로 rdisk를 활용하라는 글을 찾을 수 있었다. 입력이 다 끝났으면 micro SD를 라즈베리 파이에 연결한다.

라즈베리 파이 접속하기

모니터가 있으면 더 편하게 했겠지만 본체만 가지고도 충분히 기본 설정이 가능하게 잘 구성되어 있다. 라즈베리 파이에 Micro SD, 무선 랜카드, 그리고 초기 설정을 위해 사용할 이더넷 케이블(랜선)을 연결한다. 케이블 한쪽은 라즈베리 파이 본체에 반대쪽은 맥에 직접 연결(Direct Connection)한다. 그러고 나서 전원 usb를 꼽으면 초록색 빨간색 LED가 빤짝이며 부팅된다. 빨간색이 오래 켜져있으면 부팅이 완료된 것이다.

맥에서 터미널을 열어 ssh로 로그인한다.

$ ssh pi@raspberrypi.local
# password는 raspberry

기본적인 메시지와 함께 쉘이 뜨는 것을 확인할 수 있다. 다음 명령어로 환경 설정을 시작한다.

$ sudo raspi-config

1번으로 파일 시스템을 재설정하고 2번으로 사용자 비밀번호를 변경한다. 변경이 완료되었으면 Tab을 누르면 Finish를 선택할 수 있다.

wifi 설정하기

라즈베리 파이를 유선랜으로 연결해두는 환경이면 좋겠지만 내 방은 공유기랑 멀어서 wifi를 기본적으로 사용하도록 설정해야 한다. 내 wifi usb 동글은 충분히 낡아서 그런지 드라이버 설정 없이 바로 인식했다. 먼저 스캔을 한다.

$ sudo iwlist wlan0 scan

이제 랜카드가 스캔한 AP가 모두 출력되는데 연결하고자 하는 SSID를 확인하자. 그리고 /etc/wpa_supplicant/wpa_supplicant.conf에 ssid와 AP 접속할 때 사용하는 비밀번호를 입력한다. vim은 없고 vi가 있는데 nano를 써도 무관하다. 취향에 따라 사용하고 여기서는 nano로 적어둔다.

$ sudo nano /etc/wpa_supplicant/wpa_supplicant.conf

이제 내용을 입력할 수 있다. ssid에는 AP명, psk에는 AP 비밀번호를 입력한다.

network={
    ssid="HARUAIR_AP"
    psk="goawayfreerider"
}

입력을 완료했으면 ctrl + x, y 그리고 엔터를 누른다. 이러면 자동으로 변경을 확인해서 wifi에 연결된다. 안되면 무선랜을 sudo ifdown wlan0으로 내렸다가 sudo ifup wlan0으로 다시 켜준다. 인터넷 연결 확인은 간단하게 ping을 활용할 수 있다. ping google.com을 입력했을 때 resolving host problem 같은게 나지 않고 정상적으로 핑을 주고 받으면 연결이 된 상태다. 이제 vim을 설치할 수 있다. 😀

wlan0이 연결이 되었으면 이제 이더넷 케이블은 제거해도 된다.

라즈베리파이 기본 호스트명 변경하기

만약 여러대의 라즈베리파이를 사용할 예정이라면 편의를 위해 호스트명을 변경해두는 것이 편리하다. 위에서 환경설정에 사용했던 raspi-config에서 8 Advanced Options를 선택하면 A2 Hostname 항목에서 변경할 수 있다. 다음은 이 간편한 방법을 두고 복잡한 과정으로 변경하는 방법이다.

두 군데를 수정하면 되는데 /etc/hostname 파일과 /etc/hosts 파일이다. 각각 파일의 역할이 궁금하면 구글에서 찾아보자.

$ sudo nano /etc/hostname

rassberrypi를 원하는 호스트명으로 변경한다. (변경 후에 저장하려면 ctrl + x, y 그리고 엔터.)

$ sudo nano /etc/hosts

가장 마지막 줄에 있는 127.0.1.1 rassberrypi에서 뒷 호스트명을 변경한 호스트명으로 교체하고 저장한다. 이제 다음 명령어로 변경사항을 반영하고 재부팅한다.

$ sudo /etc/init.d/hostname.sh
$ sudo reboot

재부팅하면 변경된 호스트명으로 접속할 수 있다.

new hostname

라즈베리 파이를 직접 사용해보니 그냥 일반 컴퓨터와 크게 다르지 않았다. 사양도 높은 편이라서 하드만 연결하면 NAS 용도로 충분히 사용할 수 있을 정도인데 왜 좋은 평을 받는지 충분히 이해가 되었다. 최근 IoT의 열풍도 그냥 나타난 것이 아니라 이런 작고 강력한 하드웨어의 든든한 지원 덕분이라는 것을 실감할 수 있었다.

어떻게 활용하면 오래, 재미있게 가지고 놀 수 있을지 생각해봤는데 요즘 Azure에서 IoT와 관련해 여러 서비스가 나오고 있어서 센서를 구입해 이 서비스를 이용해볼 생각이고 그리고 손으로 만질 수 있는 개발에 대한 로망이 있어 확장 실드와 모터를 구입해 servo control을 해보려고 한다. 웹과 연동되는 장난감을 만들 생각에 벌써 신난다. 😀

색상을 바꿔요

눈에 편한 색상을 골라보세요 :)

Darkreader 플러그인으로 선택한 색상이 제대로 표시되지 않을 수 있습니다.