개발환경 구축 RaspberryPi Sejin Oh
Raspberry Pi 개발환경 구축 2
Raspberry Pi RaspberryPi 개발환경 구축 3 RaspberryPi GPIO Pin ( 코블러, 브레드보드 ) USB ( 키보드, 마우스, WIFI 모듈 ) Ethernet (LAN 케이블 ) HDMI ( 모니터 ) POWER microSD (OS 설치 )
Raspberry Pi RaspberryPi 개발환경 구축 RaspberryPi OS 다운로드 OS 다운로드 4 OS
Raspberry Pi RaspberryPi 개발환경 구축 RaspberryPi OS 다운로드 라즈베리 파이 재단에서는 공식 OS 로 Raspbian, OpenELEC, RISC OS, Ridora, Arch, RaspBMC 를 지원. 라즈베리 파이의 대표적인 OS 는 데비안 리눅스 계열의 라즈비안 (Raspbian) 을 사용. 5 라즈베리 파이 OS 다운로드
Raspberry Pi RaspberryPi 개발환경 구축 Win32DiskImager 다운로드 받은 라즈베리 파이의 OS 이미지 파일을 microSD 메모리 카드에 저장하기 위해 Win32DiskImager 소프트웨어를 이용. 6 Win32DiskImager 다운로드
Raspberry Pi RaspberryPi 개발환경 구축 Win32DiskImager 로 Raspbian iso 파일을 microSD 메모리에 설치 PC 에 microSD 메모리 카드 연결 프로그램의 [Image File] 에 다운로드한 라즈비안 img 파일을 선택 [Device] 에는 microSD 로 설정 [Write] 실행 7 Win32DiskImager 로 OS 설치
Raspberry Pi RaspberryPi 개발환경 구축 하드웨어 준비 OS 를 저장한 microSD 메모리 카드를 라즈베리 파이에 삽입 라즈베리 파이와 모니터를 HDMI 케이블로 연결 키보드와 마우스를 라즈베리 파이에 연결 라즈베리 파이와 LAN or WIFI 연결 전원 공급 ( 마지막에 할 것 ) – 전원 연결 후 자동 부팅 8 하드웨어 준비
Raspberry Pi RaspberryPi OS 설치 라즈비안 설치 전원을 공급하여 부팅을 하면 다음과 같은 설치화면이 나타남 라즈비안 (Raspbian) 을 클릭하고 설치를 진행 9 라즈비안 (Raspbian) 설치
Raspberry Pi RaspberryPi OS 설치 라즈비안 설치 진행 화면 10 라즈비안 (Raspbian) 설치
Raspberry Pi RaspberryPi 부팅 부팅 화면 11 부팅과정
Raspberry Pi RaspberryPi 부팅 라즈베리 파이 설정 전원을 공급하여 부팅 도중에 Raspi-config 화면이 표시되어 라즈베 리 파이를 설정할 수 있는 메뉴가 나타남 시간대 설정, 지역설정, 패스워드, 오버클럭 등 … 다양한 설정 가능 12 라즈베리 파이 설정
Raspberry Pi RaspberryPi 부팅 라즈비안 로그인 사용자 ID : pi 패스워드 : raspberry 13 라즈비안 로그인
Raspberry Pi RaspberryPi 부팅 라즈비안 x 윈도우 실행 $ startx 14 라즈비안 X 윈도우 실행
Raspberry Pi OS 배포 이후 추가된 패키지 및 수정된 사항 반영 터미널을 실행하여 업데이트 및 업그레이드 명령어 실행 패키지 목록 업데이트 패키지 관리 서버로부터 이용 가능한 프로그램 패키지의 목록을 최신 버전으로 업데이트 $ sudo apt-get update 15 업데이트 및 업그레이드
Raspberry Pi 갱신된 패키지 목록 중 새로운 버전으로 설치 업데이트 명령어로 갱신된 패키지 목록 중 컴퓨터에 설치된 프로그램 이 업데이트 되었으면 업데이트 명령으로 새로운 버전으로 설치 패키지 업그레이드 $ sudo apt-get upgrade 16 업데이트 및 업그레이드
Raspberry Pi 라즈비안 재부팅 라즈비안 재부팅 아래 명령어 중 하나 실행 $ sudo shutdown –r now $ sudo reboot 라즈비안 종료 라즈비안 종료 아래 명령어 중 하나 실행 $ sudo shutdown –h now $ sudo halt $ sudo poweroff 17 라즈비안 재부팅, 종료
Raspberry Pi RaspberryPi 기본 설정 라즈베리 파이 설정 라즈베리 파이의 기본 설정은 raspi-config 를 실행하여 설정 $ sudo raspi-config 18 라즈베리 파이 설정
Raspberry Pi RaspberryPi 기본설정 Expand Filesystem 라즈비안을 SD 메모리카드에 담은 후 이미지 파일을 풀 때 사용되는 SD 메모리가 2GB 이상이더라도 2GB~4GB 로 제한 SD 메모리카드의 모든 영역을 사용하기 위해서 사용 Expand filesystem 실행하면 스스로 공간 확장을 설정한 후, 재부팅하 면 설정 내용이 반영된다. Change User Password 라즈베리 파이의 초기 암호는 raspberrypi 보안 및 편리를 위해서 암호를 바꾸기 위해 사용 19 각 메뉴에 대한 설명
Raspberry Pi RaspberryPi 기본설정 SD 카드의 모든 저장 공간 활용하기 라즈베리 파이의 SD 카드에 운영체제를 저장할 때, 파티션 크기는 설 치 이미지의 크기만큼 정해지므로 SD 카드 전체 용량을 사용할 수 없 다. raspi-config 유틸리티에서 expand rootfs 의 설정으로 SD 공간을 확장 $ sudo raspi-config expand rootfs 선택 재부팅 20 SD 메모리 용량 늘리기
Raspberry Pi RaspberryPi 기본설정 라즈비안에서 SD 메모리 사용량 확인하기 $ df -h 21 SD 메모리 용량 늘리기
Raspberry Pi RaspberryPi 기본설정 Enable Boot to Desktop 라즈베리 파이를 시작할 때 X 윈도우를 구동할 지에 대한 설정 를 선택하면 시작과 함께 X 윈도우가 실행됨 를 선택하면 콘솔화면에서 명령어 라인에 명령 대기 상태 Internationalisation Options I1 Change Locale 지역을 설정하는 옵션 기본적으로 영국 (en_GB.UTF-8 UTF-8) 이 설정되어 있음 한국어로 변경을 원할 경우 지역 목록 중에서 ko_KR.UTF-8 UTF-8 을 선 택 I2 Change Timezone 시간대 설정하는 옵션 국가의 수도명을 찾아 설정 ( 한국 Asia -> Seoul 선택 ) 22 각 메뉴에 대한 설명
Raspberry Pi RaspberryPi 기본설정 Internationalisation Options I3 Change Keyboard Layout 키보드 레이아웃을 변경하는 옵션 기본적으로 Generic 105-key (Intl) PC 로 설정되어 있음 23 각 메뉴에 대한 설명
Raspberry Pi RaspberryPi 기본설정 Enable Camera 라즈베리 파이 카메라를 사용할 때 설정해주는 옵션 Add to Rastrack 전세계의 라즈베리 파이 사용자 분포를 체크하는 옵션 Overclock 라즈베리 파이는 기본적으로 700MHz 의 동작클록으로 CPU 를 구동 설정을 통하여 오버클럭이 가능 None – 700MHz Modest – 800MHz Medium – 900MHz High – 950MHz Turbo – 1GHz 24 각 메뉴에 대한 설명
Raspberry Pi RaspberryPi 기본설정 Advanced Options A1 Overscan 구형 TV 나 모니터의 경우 해당 디스플레이에 맞도록 설정해주는 기능 A2 Hostname raspberrypi 로 기본 설정되어 있는 호스트네임을 변경하는 옵션 A3 Memory Split GPU 메모리 16/32/64/128/256 으로 설정할 수 있음 기본설정 64MB A4 SSH SSH(Secure Shell) 의 사용 여부를 설정 SSH 는 다른 컴퓨터에서 터미널 창으로 원격 접속할 수 있음 A5 Update raspi-config 툴을 최신 버전으로 업데이트하는 명령 About raspi-config raspi-config 툴 설명 25 각 메뉴에 대한 설명
Raspberry Pi 유 / 무선랜 설정 라즈비안의 유 / 무선 인터넷 환경설정 $ sudo nano /etc/network/interfaces 기본 설정은 유 / 무선 인터넷 모두 자동으로 IP 를 할당받는 DHCP 로 설정되어 있음 interfaces 기본 설정 26 기본 설정 auto lo iface lo inet loopback iface eth0 inet dhcp allow-hotplug wlan0 iface wlan0 inet manual wpa-roam /etc/wpa_supplicant/wpa_supplicant.conf iface default inet dhcp
Raspberry Pi 유 / 무선랜 설정 무선 인터넷 수동 설정 $ sudo nano /etc/network/interfaces 27 무선 인터넷 수동 설정 auto lo iface lo inet loopback iface eth0 inet dhcp auto wlan0 iface wlan0 inet static wpa-ssid 와이파이식별자 wpa-psk 비밀번호 address netmask gateway
Raspberry Pi 무선 인터넷 설정 WiFi Config 실행 터미널에서 실행 sudo wpa_gui 28 X 윈도우상에서 무선 인터넷 설정
Raspberry Pi 무선 인터넷 설정 WiFi Config 의 Scan 을 실행하여 접속할 wifi 선택 29 X 윈도우상에서 무선 인터넷 설정
Raspberry Pi 무선 인터넷 설정 선택된 wifi 의 패스워드 설정 및 추가, 접속 확인 30 X 윈도우상에서 무선 인터넷 설정
Raspberry Pi IP 고정 설정 무선랜 WPA 설정 무선랜의 공유기 접속은 별도의 파일에 기록되어 있어 wpa_supplicant.conf 파일을 설정해주어야 함 $ sudo nano /etc/wpa_supplicant/wpa_supplicant.conf 31 ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev update_config=1 network={ ssid=“WiFi SSID” psk=“password” proto=wpa key_mgmt=WPA-PSK pairwise=CCMP auth_alg=OPEN }
Raspberry Pi RaspberryPi 원격접속 RaspberryPi 원격접속 RaspberryPi 의 원격접속은 다음과 같은 방법으로 접속이 가능하다. SSH(Secure Shell) XRDP VNC SSH PuTTY 소프트웨어를 이용하요 SSH 로 접속가능 콘솔 모드 ( 그래픽 모드 사용할 수 없음 ) XRDP 라즈베리파이에 XRDP 를 설치하고 윈도우에서 원격 데스트톱 연결로 접 속 가능 그래픽 모드 VNC 라즈베리파이에 TightVNC 를 설치하고 VNC 로 원격 접속 가능 그래픽 모드 32 원격 접속 방법
Raspberry Pi SSH 접속 SSH(Secure Shell) SSH 은 명령어 라인 인터페이스 기반의 쉘 프로그램과 마찬가지로 컴 퓨터에서 행하는 다양한 명령어를 사용할 수 있는 프로그램 원격 접속 시에 메시지를 암호화하여 전송하기 때문에 보안에 있어서 도 뛰어난 시스템이다. SSH 원격 접속 라즈베리 파이 설정 기본 설정의 raspi-config 에서 SSH 의 항목에 Enable 로 설정해줘야 SSH 를 사용할 수 있음 ( 초기 값 enable) PuTTY 다운로드 PuTTY 소프트웨어를 다운로드하여 SSH 원격 접속 33 SSH 원격 접속
Raspberry Pi SSH 접속 SSH 원격 접속 PuTTY 를 이용한 SSH 접속 라즈베리파이의 Host Name or IP Address 를 PuTTY 에서 입력 Connection type 은 SSH, Port 는 SSH 원격 접속 ID : pi password : raspberry
Raspberry Pi XRDP 접속 XRDP(Xwindow Remote Desktop Protocol) 설치 ( 라즈베리 파이 ) $ sudo apt-get install xrdp XRDP 로 접속 ( 윈도우 ) 시작 -> 실행에서 mstsc 명령어로 원격 데스크톱 연결을 실행 라즈베리파이 ip 주소 입력 후 연결 35 XRDP 원격 접속
Raspberry Pi XRDP 접속 XRDP 원격 접속 완료 36 XRDP 원격 접속
Raspberry Pi VNC 접속 TightVNC 를 이용한 원격 접속 설치 방법 $ sudo apt-get update $ sudo apt-get upgrade $ sudo apt-get install tightvncserver 실행 방법 $ tightvncserver tightvncserver 를 실행 시키면 비밀번호를 입력 ( 예 : raspberry) 환경 설정 $ vncserver :1 –geometry 1280*1024( 해상도입력 ) –depth 24 1 의 의미는 1 번 호스트 사용 37 VNC(Virtual Network Computing) 원격 접속
Raspberry Pi VNC 접속 TightVNC 를 이용한 원격 접속 tightvnc 동작 포트 확인 $ sudo netstat –tulpn 5901, 6001 포트 실행 중임을 확인 38 VNC 원격 접속
Raspberry Pi VNC 접속 윈도우 상에서의 tightvnc 설치 Windows 에서 vncserver 다운로드 및 설치 뷰어만 사용하므로 Server 는 unavilable 에서 다운로드 및 설치 39 VNC 원격 접속
Raspberry Pi VNC 접속 윈도우 상에서의 tightvnc 접속 New TightVNC Connection Remote Host 에 라즈베리파이 IP 주소 입력후 접속 IP 주소 뒤에 콜론 :1 라고 호스트 넘버를 입력 ex) :1 40 VNC 원격 접속
Raspberry Pi VNC 접속 윈도우 상에서의 tightvnc 접속 확인 VNC 서버 종료 ( 라즈베리파이 ) $ sudo vncserver –kill : 1 41 VNC 원격 접속
Raspberry Pi 삼바 (SAMBA) 삼바 (SAMBA) 삼바란 다른 시스템에서 해당 시스템의 하드디스크와 네트워크 프린 터 자원을 공유하도록 환경 설정할 수 있고, 삼바를 통해 파일 시스템 과 프린터로 접근을 할 수 있음. 라즈베리 파이에서의 삼바 개발된 소프트웨어 또는 파일을 네트워크를 통하여 접근 라즈베리 파이에서 윈도우 / 리눅스 시스템으로 접근 윈도우 / 리눅스 시스템에서 라즈베리 파이로 접근 42
Raspberry Pi 삼바 (SAMBA) 삼바 (SAMBA) 설치 apt-get 을 이용하여 samba 와 samba-common-bin 패키지 설치 $ sudo apt-get install samba samba-common-bin 삼바 사용자 설정 $ sudo smbpasswd –a pi 패스워드 입력 ( 예 : raspberry) 삼바 config 설정 $ sudo nano /etc/samba/smb.conf 삼바 데몬 재시작 $ sudo service samba restart 윈도우에서 시작 > 실행 \\ 라즈베리파이 IP 주소 43 코드 마지막 줄에 작성 [pi] comment = rpi samba server path = /home/pi valid user = pi browseable = yes writable = yes
Raspberry Pi 삼바 (SAMBA) 삼바 (SAMBA) 접속 확인 44
Raspberry Pi 라즈베리 파이 활용 QEMU(Quick EMUlator) 라즈비안 리눅스는 라즈베리 파이에 적합하게 개발되어 ARM 환경에 서만 작동한다. x86 환경에서는 에뮬레이터를 사용하여 라즈비안을 사용할 수 있다. QEMU 다운로드 0. RaspberryPi QEMU, R-Pi for windows 클릭 45 QEMU
Raspberry Pi 라즈베리 파이 활용 QEMU 실행 압축해제 후 run 실행 46 QEMU
Raspberry Pi Thank you 47