기반 IoT 실습 - IoT With Raspberrypi - ( 주 ) 에프디크리에이트

Similar documents
Raspbian 설치 라즈비안 OS (Raspbian OS) 라즈베리파이 3 Model B USB 마우스 USB 키보드 마이크로 SD 카드 마이크로 SD 카드리더기 HDM I 케이블모니터

벤처연구사업(전동휠체어) 평가

Microsoft Word - ntasFrameBuilderInstallGuide2.5.doc

경우 1) 80GB( 원본 ) => 2TB( 복사본 ), 원본 80GB 는 MBR 로디스크초기화하고 NTFS 로포맷한경우 복사본 HDD 도 MBR 로디스크초기화되고 80GB 만큼포맷되고나머지영역 (80GB~ 나머지부분 ) 은할당되지않음 으로나온다. A. Window P

Microsoft Word - windows server 2003 수동설치_non pro support_.doc

JDK이클립스

01장

PowerPoint 프레젠테이션

목차 윈도우드라이버 1. 매뉴얼안내 운영체제 (OS) 환경 윈도우드라이버준비 윈도우드라이버설치 Windows XP/Server 2003 에서설치 Serial 또는 Parallel 포트의경우.

Install stm32cubemx and st-link utility

6. 설치가시작되는동안 USB 드라이버가자동으로로드됩니다. USB 드라이버가성공적으로로드되면 Setup is starting( 설치가시작되는중 )... 화면이표시됩니다. 7. 화면지침에따라 Windows 7 설치를완료합니다. 방법 2: 수정된 Windows 7 ISO

Mango-IMX6Q mfgtool을 이용한 이미지 Write하기

목차 1. 시스템요구사항 암호및힌트설정 ( 윈도우 ) JetFlash Vault 시작하기 ( 윈도우 ) JetFlash Vault 옵션 ( 윈도우 )... 9 JetFlash Vault 설정... 9 JetFlash Vault

Studuino소프트웨어 설치

Snort Install Manual Ad2m VMware libnet tar.gz DebianOS libpcap tar.gz Putty snort tar.gz WinSCP snort rules 1. 첫번째로네트워크설정 1) ifconf

Microsoft PowerPoint - 02_Linux_Fedora_Core_8_Vmware_Installation [호환 모드]

System Recovery 사용자 매뉴얼

소프트웨어설치 1. 소프트웨어설치및제거 ( 소스코드 ) 소스코드컴파일을이용한 S/W 설치 1. 소스코드다운로드 - 예 ) httpd tar.gz - 압축해제 : #tar xzvf httpd tar.gz - INSTALL 또는 README파일참조

임베디드시스템설계강의자료 4 (2014 년도 1 학기 ) 김영진 아주대학교전자공학과

Windows 8에서 BioStar 1 설치하기

네이버블로그 :: 포스트내용 Print VMw are 에서 Linux 설치하기 (Centos 6.3, 리눅스 ) Linux 2013/02/23 22:52 /carrena/ VMware 에서 l

Microsoft PowerPoint Android-SDK설치.HelloAndroid(1.0h).pptx

PowerPoint 프레젠테이션

로봇SW교육원 강의자료

SBR-100S User Manual

1. 안드로이드개발환경설정 안드로이드개발을위해선툴체인을비롯한다양한소프트웨어패키지가필요합니다 툴체인 (Cross-Compiler) 설치 안드로이드 2.2 프로요부터는소스에기본툴체인이 prebuilt 라는이름으로포함되어있지만, 리눅스 나부트로더 (U-boot)

NTD36HD Manual

Splentec V-WORM Quick Installation Guide Version: 1.0 Contact Information 올리브텍 주소 : 경기도성남시분당구구미로 11 ( 포인트타운 701호 ) URL: E-M

ISP and CodeVisionAVR C Compiler.hwp

PowerPoint 프레젠테이션

4S 1차년도 평가 발표자료

Microsoft PowerPoint SDK설치.HelloAndroid(1.5h).pptx

PowerPoint 프레젠테이션

Microsoft Word - Armjtag_문서1.doc

아래 항목은 최신( ) 이미지를 모두 제대로 설치하였을 때를 가정한다

고급 프로그래밍 설계

1) 인증서만들기 ssl]# cat > // 설명 : 발급받은인증서 / 개인키파일을한파일로저장합니다. ( 저장방법 : cat [ 개인키

1. What is AX1 AX1 Program은 WIZnet 사의 Hardwired TCP/IP Chip인 iinchip 들의성능평가및 Test를위해제작된 Windows 기반의 PC Program이다. AX1은 Internet을통해 iinchip Evaluation

1. Windows 설치 (Client 설치 ) 원하는위치에다운받은발송클라이언트압축파일을해제합니다. Step 2. /conf/config.xml 파일수정 conf 폴더에서 config.xml 파일을텍스트에디터를이용하여 Open 합니다. config.xml 파일에서, 아

지난시간에... 우리는 kernel compile을위하여 cross compile 환경을구축했음. UBUNTU 12.04에서 arm-2009q3를사용하여 간단한 c source를빌드함. 한번은 intel CPU를위한 gcc로, 한번은 ARM CPU를위한 gcc로. AR

Mango220 Android How to compile and Transfer image to Target

아이콘의 정의 본 사용자 설명서에서는 다음 아이콘을 사용합니다. 참고 참고는 발생할 수 있는 상황에 대처하는 방법을 알려 주거나 다른 기능과 함께 작동하는 방법에 대한 요령을 제공합니다. 상표 Brother 로고는 Brother Industries, Ltd.의 등록 상

1) 인증서만들기 ssl]# cat > // 설명 : 발급받은인증서 / 개인키파일을한파일로저장합니다. ( 저장방법 : cat [ 개인키

Endpoint Protector - Active Directory Deployment Guide

을풀면된다. 2. JDK 설치 JDK 는 Sun Developer Network 의 Java( 혹은 에서 Download > JavaSE 에서 JDK 6 Update xx 를선택하면설치파일을

슬라이드 1

Slide 1

USB 케이블만을이용한리눅스 NFS 개발환경 (VirtualBox) 최초작성 : 2010 년 10 월 21 일 작성자 : 김정현 수정내용 최초작성 by 김정현 스크립트추가, 설명보충 by 유형목 1. VritualBox

SQL Developer Connect to TimesTen 유니원아이앤씨 DB 기술지원팀 2010 년 07 월 28 일 문서정보 프로젝트명 SQL Developer Connect to TimesTen 서브시스템명 버전 1.0 문서명 작성일 작성자

게임 기획서 표준양식 연구보고서

Microsoft Word - Korean_뷰어 메뉴얼_공용_ADVR&SWi_.doc

Microsoft Word - src.doc

MF5900 Series MF Driver Installation Guide

온라인등록용 메뉴얼

iii. Design Tab 을 Click 하여 WindowBuilder 가자동으로생성한 GUI 프로그래밍환경을확인한다.

1

소개 TeraStation 을 구입해 주셔서 감사합니다! 이 사용 설명서는 TeraStation 구성 정보를 제공합니다. 제품은 계속 업데이트되므로, 이 설명서의 이미지 및 텍스트는 사용자가 보유 중인 TeraStation 에 표시 된 이미지 및 텍스트와 약간 다를 수

PowerPoint 프레젠테이션

<4D F736F F F696E74202D C61645FB3EDB8AEC7D5BCBA20B9D720C5F8BBE7BFEBB9FD2E BC8A3C8AF20B8F0B5E55D>

server name>/arcgis/rest/services server name>/<web adaptor name>/rest/services ArcGIS 10.1 for Server System requirements - 지

Assign an IP Address and Access the Video Stream - Installation Guide

Mango-E-Toi Board Developer Manual

<B0F8B0B35357B8AEBAE432315FBBEFB9D D424129BCADB9F6BBE7BFEBB9FD2E687770>

<4D F736F F D D31312D30312D53572D30312DBBE7BFEBC0DABCB3B8EDBCAD5FBFDCBACEB9E8C6F7BFEB2E646F63>


리눅스설치가이드 3. 3Rabbitz Book 을리눅스에서설치하기위한절차는다음과같습니다. 설치에대한예시는우분투서버 기준으로진행됩니다. 1. Java Development Kit (JDK) 또는 Java Runtime Environment (JRE) 를설치합니다. 2.

Oracle VM VirtualBox 설치 VirtualBox에서 가상머신 설치 가상머신에 Ubuntu 설치

운영체제실습_명령어

Chapter 1

. PC PC 3 [ ] [ ], [ ] [ ] [ ] 3 [ ] [ ], 4 [ ] [ ], 4 [Internet Protocol Version 4 (TCP/IPv4)] 5 [ ] 6 [ IP (O)], [ DNS (B)] 7 [ ] 한국어 -

Xcovery 사용설명서

Microsoft PowerPoint - AME_InstallRoutine_ver8.ppt

[ 컴퓨터시스템 ] 3 주차 1 차시. 디렉토리사이의이동 3 주차 1 차시디렉토리사이의이동 학습목표 1. pwd 명령을사용하여현재디렉토리를확인할수있다. 2. cd 명령을사용하여다른디렉토리로이동할수있다. 3. ls 명령을사용하여디렉토리내의파일목록을옵션에따라다양하게확인할수

PowerPoint 프레젠테이션

<4D F736F F F696E74202D206D61696E D F6E D20C7D8C5B720BDC3BDBAC5DB20C0FCC1A620C1B6B0C7202D20B3D7C6AEBFF6C5A920C0CEC5CDC6E4C0CCBDBA20C4ABB5E520BCB3C1A4>

Microsoft PowerPoint - 알고리즘_1주차_2차시.pptx

목 차 1. 드라이버 설치 설치환경 드라이버 설치 시 주의사항 USB 드라이버 파일 Windows XP에서 설치 Windows Vista / Windows 7에서 설치 Windows

< 목차 > Ⅰ. 개요 3 Ⅱ. 실시간스팸차단리스트 (RBL) ( 간편설정 ) 4 1. 메일서버 (Exchange Server 2007) 설정변경 4 2. 스팸차단테스트 10

컴퓨터관리2번째시간

Freecom Mobile Drive XXS 사용자에게! Freecom Mobile Drive XXS 외장형 하드 드라이브를 선택해 주셔서 감사합니다. 최 적의 사용과 성능을 위해 본 제품을 사용하기 전에 본 설명서를 주의 깊게 읽을 것 을 권합니다. Freecom T

<4F B8A620C0CCBFEBC7D120C8B8B7CE20C0DBBCBAC0C720B1E2C3CA2E687770>

SIGIL 완벽입문

C. KHU-EE xmega Board 에서는 Button 을 2 개만사용하기때문에 GPIO_PUSH_BUTTON_2 과 GPIO_PUSH_BUTTON_3 define 을 Comment 처리 한다. D. AT45DBX 도사용하지않기때문에 Comment 처리한다. E.

EISC-GANG_User_Guide_V1.2

PWR PWR HDD HDD USB USB Quick Network Setup Guide xdsl/cable Modem PC DVR 1~3 1.. DVR DVR IP xdsl Cable xdsl Cable PC PC DDNS (

라즈베리파이 프로그래밍_130912(최종).indd

본교재는수업용으로제작된게시물입니다. 영리목적으로사용할경우저작권법제 30 조항에의거법적처벌을받을수있습니다. [ 실습 ] 스위치장비초기화 1. NVRAM 에저장되어있는 'startup-config' 파일이있다면, 삭제를실시한다. SWx>enable SWx#erase sta

작성자 : saint Overview BackTrack 는 LILO 를부트로더로사용한다. BactTrack 을기본환경설정그대로설치하면부팅할수없는경우가있는데, 이것은실린더크기가 1024 보다큰하드디스크에설치하면 LILO 가 OS 를정상적으로읽어올수없기때문이다. 요즘나오는

RaspberryPi 개발환경구축 II 1 제 02 강 개발환경구축 II 라즈베리파이보드 (Raspbian 설치,... ) Wi-Fi 망구축 ( 무선공유기 ) 개발툴 (PuTTY, NFS, FTP, samba, mstsc, DD for Win.) 참고 ) 교재제 2 장

Network seminar.key

Microsoft PowerPoint - chap02-C프로그램시작하기.pptx

목차 개요...3 iusb 만들기...5 iusb 사용 보안영역에로그인 보안영역에서로그아웃 하드웨어안젂하게제거 비밀번호변경 설정...19 USB 초기화...21 iusb 정품등록...24 iusb 의기타기능

Office 365 사용자 가이드

VPN.hwp

OM2M 기반의 OHP-M2M 오픈소스설치가이드 2015 년 8 월 경북대학교통신프로토콜연구실 최예찬, 강형우 요약 사물인터넷 (Internet of Things: IoT) 이이슈가되면서다양한사

특징 찾아보기 열쇠 없이 문을 열 수 있어요! 비밀번호 및 RF카드로도 문을 열 수 있습니다. 또한 비밀번호가 외부인에게 알려질 위험에 대비, 통제번호까지 입력해 둘 수 있어 더욱 안심하고 사용할 수 있습니다. 나만의 비밀번호 및 RF카드를 가질 수 있어요! 다수의 가

ODS-FM1

Microsoft PowerPoint - 11주차_Android_GoogleMap.ppt [호환 모드]

CODESYS 런타임 설치과정

Contributors: Myung Su Seok and SeokJae Yoo Last Update: 09/25/ Introduction 2015년 8월현재전자기학분야에서가장많이쓰이고있는 simulation software는다음과같은알고리즘을사용하고있다.

Transcription:

기반 IoT 실습 - IoT With Raspberrypi - ( 주 ) 에프디크리에이트

IoT With Raspberrypi 매뉴얼목차 1. Raspberrypi 개요 1. Raspberrypi 개요 9 가. 라즈베리파이의개요 10 2. Raspbian 설치하기 11 가. Micro SD 에 Raspbian 이미지설치 11 나. 기본설정 15 3. NOOBS 개요및설치 (Win7) 18 가. NOOBS 의설치 19 4. 우분투에 NOOBS 설치 25 가. Micro SD Card 포맷하기 25 나. gparted 사용 31 다. NOOOBS 를 MicroSD 에올리기 38 5. Raspberry Pi 에설치하기 41 가. 설치작업 41 6. Raspberrypi 개발환경 part1 44 가. 삼바 (Samba) 설치 44 나. SSH 원격접속 (Window) 52 다. SSH 원격접속 (Linux) 57 7. Raspberrypi 에모듈프로그램올리기 60 가. Ubuntu 에크로스컴파일러설치하기 60 나. 컴파일하기 62 다. Raspberrypi 의 kernel 바꾸기 64 라. 모듈프로그램생성하기 68 8. Raspberry Pi GPIO 의개요 74 가. Raspberry Pi GPIO 의목적 74 나. Raspberry Pi GPIO 의범위 74 9. GPIO 75 10. Raspberry Pi2 B+ GPIO 76 가. GPIO 회로도 76 나. GPIO 레지스터 76 다. GPIO 설정 78 라. GPIO 출력 82 마. GPIO 입력 83 11. Linux 에서 GPIO 사용 84

2. Wiring Pi 의개요 1. Wiring Pi 의개요 95 가. Wiring Pi 의개념 95 나. Wiring Pi 의 GPIO-Pinout 95 2. Wiring Pi 환경설정하기 96 가. ZIP 다운로드를통해직접설치하기 96 나. 소스관리틀 (git) 이용해 WiringPi 설치하기 97 다. GPIO 의핀상태확인해보기 100 3. Wiring Pi 에서제공하는 Pin 기능 101 4. 참고자료 103 5. SPI 의개요 104 가. SPI (Serial Peripheral Interface) 104 나. SPI 인터페이스 105 다. SPI 데이터전송 106 라. Raspberry Pi 에서 Spi 통신활성화 108 마. Wiring Pi 의 GPIO-Pinout 111 바. GPIO 의핀상태확인해보기 112 6. 라즈베리파이보드에서소켓통신하기 114 가. TCP/IP 란? 114 나. UDP/IP 란? 116 다. 라즈베리파이보드간의소켓 117 7. Raspberry Pi 에 web-server 구축하기 124 가. APM 구축하기 124

제 1 장 1.RaspberryPi 의개요 - 9 -

1 RaspberryPi 의개요 라즈베리파이의개요 위의그림은 Raspberry 에서제공하는핀과포트입출력장치들의연결위치를나타낸 것이다. [Raspberry 사양 ] - 10 -

2 Raspbian 설치하기 컴퓨터를작동시키기위해서는운영체제가필요하다. 그이유는 multiprocessing을위함인데 Raspberry로하나의기능만을사용할수있다면누가이러한보드를사용할것인가모두 multiprocessing 위해운영체제를사용하는것을잊지말자. 이와같이 Raspberry를작동시키기위해서도운영체제가필요하다. Raspberry용으로배포되고있는운영체제로 Raspbian, Pidora, Openelec, Raspbmc, Risc 등이있다. Openelec, Raspbmc은 Raspberry XBMC전용운영체제이다. 미디어센터로만사용하고자한다면이두가지운영체제를설치하는것이효과적이다. 하지만그외의용도로도사용하려면 Raspbian, Pidora를사용하는것이효과적이다. o XBMC(XBoxMediaCenter) XBMC(XBox Media Center) 는원어그대로초기에 XBox 콘솔의미디어센터프로그램으로사용되었다. 현재는별도의공식버전으로출시가되어 Windows, LINUX, Android, Mac OS X, ios 계열의OS 탑재및운영되는전자기기와최근보급이점차늘어나는스마트TV 역시설치가가능해지고또한, 로컬과네트워크동영상재생뿐만아니라 Youtube, Vimeo, TED, ITunes, podcast 와같은 Internet Network 을통한 Stream 재생까지도가능한 Open Source 형태의 Cross platform 의형태로점차진화하고있다. M ic ro S D 에 R a s p b ia n 이미지설치 사용자가사용하고있는운영체제는 Windows이므로해당환경에서이미지를굽는방법을설명하겠다. 우선 Raspberry의공식홈페이지에들어가서이미지를다운로드받아야한다. http://www.raspberrypi.org/ [ 그림 1] [ 그림 1] 과같이공식홈페이지에보이는 downloads 를클릭한다. - 11 -

[ 그림 2] 우리는 Raspbian을설치할것이기때문에 download.zip을클릭하여이미지를다운로드한다. ( 용량이약 930MB이며다운로드속도가느리므로미디받아놓는것이좋을것이다 ) 다운로드가완료되었다면원하는위치에압축을해제해준다. 해제하면 Raspbian 의 이미지파일을 [ 그림 3] 에서와같이볼수있을것이다. 이것을 Micro SD 에설치하기위해서는 Win32 Disk Imager 라는프로그램을다운받 아서설치해야한다. http://sourceforge.net/projects/win32diskimager/ [ 그림 3] - 12 -

위의주소로접속하면 [ 그림 3] 과같이화면이나오고화면하단에있는 Download 를클릭하면다운로드를할수있다. 설치하는과정은너무간단하기때문에생략하 기로하겠다. 동의해주고다음으로넘기면설치는완료된다. 설치가완료되면 [ 그림 4] 와같은프로그램이실행될것이다. [ 그림 4] 그러면이제이미지의주소를설정해준다. [ 그림 4] 에표시를클릭하여압축해제된 이미지를선택해준다. [ 그림 5] 주소를설정해주었다면다음으로 Micro SD를컴퓨터에연결시킨다. 연결시킨 SD카드를인식하면컴퓨터에서새로운이동식미디어장치를인식하게된다. 컴퓨터마다 SD Card, Micro SD Card 슬롯이있는컴퓨터가있는반면슬롯이없는컴퓨터가있을수있다. 이때는어댑터를구매하여연결하여야한다. 위에그림처럼컴퓨터에내장되어있는메모리카드리더가있다면 SD Card, Micro SD Card 슬롯을사용하면된다. 하지만메모리카드리더가없다면휴대용리더기를구매해야한다. - 13 -

[ 메모리카드리더기 ] 해당장치의드라이브를선택해준다. [ 그림 6] 드라이브선택까지마쳤다면이제이미지를 Micro SD 에설치하는일만남았다. [ 그림 6] 과같이 Write 버튼을클릭하면이미지가 Micro SD 에설치된다. [ 그림 7] Write를클릭하면 [ 그림 7] 과같이경고문구가나타난다. 가볍게 Yes를눌러서설치를시작한다. 이경고는 Win32 프로그램의문제로발생하기때문에큰걱정을할필요는없다. 만약을위해서 Rufus라는프로그램을추천한다. 포맷과 usb에이미지를굽는프로그램으로 Win32보다안정적이고좋다. [ 그림 8] [ 그림 8] 과같이성공적으로설치가된것을볼수있다. - 14 -

가 기본설정 Micro SD 에 Raspbian 을설치했다면다음으로설치된이미지를 Raspberry 에 설치한다. [Raspberry B+] Micro SD 위의 [Raspberry] 에있는 Micro SD 슬롯에 Raspbian 을설치한 Micro SD 를삽입한 다. [ 그림 9] 는 Micro SD Card 가삽입된모습이다 [ 그림 9] 설치된상태에서모니터와전원을설치해서기본설정을해준다. [ 그림 10] [ 그림 10] 과같이연결을하게되면 Raspberry에전원이공급되기시작하면서 Micro SD에설치된이미지가설치되고초기설정을해주는화면이모니터에출력된다. 추가적으로필요한마우스와키보드를설치해야된다. 그러기위해서는 Raspberry에있는 USB포트를이용해야한다. 만약키보드, 마우스가 PS/2 포트라면 USB로변환시켜주는어댑터를구입해야한다. ( 가격이저렴하므로구매를추천한다 ) - 15 -

[ 그림 10-1] [ 그림 10-1] 과같이 4개의 USB포트에원하는위치에마우스와키보드를연결한다. 이로입력장치의연결이끝난다. 드라이브를설치할필요가없이자동적으로드라이브를찾으므로사용만하면된다. (Raspbian에서제공하는키보드, 마우스드라이브가있기때문에가능하다 ) HMDI란? 정식명칭은고선명멀티미디어인터페이스 (High Definition Multimedia Interface) 로불린다. 기존의단자들과달리음성과영상등의단자를하나로통합한단자이다. 주로컴퓨터, 게임기, Blue-ray 플레이어, Smart Phone에서사용된다. [ 그림 11] [ 그림 12] - 16 -

[ 그림 11] 에서와같이부팅을하면서설정값을초기화하고 [ 그림 12] 와같이설정을변경하는화면이나온다. 1,2,3번만기본적으로필요하므로 3가지만설명하도록한다. 후에 Setting을바꿔야할경우가생기면 Raspbian의쉘 ( 윈도우의커맨드라인같은것 ) 에서 'sudo raspi-config' 를입력하면아래와같은화면이뜬다. 1. Expand File system 이섹터는 SD 카드의모든공간을사용할수있게해준다. 1 번에커서를위치시키고 Enter Key 를누르면자동적으로 Setting 해준다. 2. Change User Password 사용자비밀번호를바꾸는섹터이다. 기본적으로 Raspbian을설치하면사용자아이디는 pi 이고비밀번호는 raspberry 이다. 하지만자신이사용하기편한비밀번호로작성하는것을추천하기때문에변경하기바란다. 1. Enable Boot to Desktop/Scratch 부팅옵션을선택하는섹터이다. 섹터를선택하고 Enter Key 를누르면 [ 그림 13] 과 같은화면이출력된다. [ 그림 13] 첫번째 Text console로터미널로진입하여사용하는옵션이다. 그래픽이아닌텍스트모드이기때문에익숙지않은사람은사용하기불편할수도있지만계속적인사용으로익숙해지는것을추천한다. 두번째 Graphical Desktop으로 GUI환경에서부팅이되는것이다. 윈도우와같이사용하는데편안함을느낄수있다. 마지막으로 Scratch Start는아이들에게쉽게프로그래밍을가르쳐주는프로그램이라고한다. 확인은개인의선택이다. raspi-config 창에서오른쪽으로커서를이동시키면 Finish에커서가가고, 그때 Enter Key를누르던지, ESC키를두번누르면창이종료되고프롬프트창이나온다. 거기서 'startx' 를입력하면아래와같은 Graphical Desktop이표시된다. - 17 -

3 NOOBS 개요및설치 (Win7) 1) Noob 의사전적인의미는어떤분야에경험이없는초보자를가리킨다. [ 그림 14] [ 그림 14] 과같이공식홈페이지로접속하여다운로드로가면위와같이 Raspbian 보 다상위에보이는 NOOBS 를확인할수있다. New Out Of Box Software 의약자로 회사에서만든것으로여러 OS 를모아놓은 OS 이미지파일이다. Raspbian 을설치했을때는 win32 라는프로그램을사용하여 Micro SD 에이미지를 설치했다면 NOOBS 은 Raspberry 에서제공하는여러 OS 와일반적인운영체제가함 께부팅할수있게해놓았다. 즉번거로움이사라진것이다. 1) Noob = newb = newbie - 18 -

N O O B S 의설치 NOOBS 을설치하기위해서 [ 그림 14] 의 1 번같이 NOOBS 의압축파일을다운로드 해야한다. 설치과정을알려주는공식홈페이지의주소이다. http://www.raspberrypi.org/help/noobs-setup/ 다운로드가완료되었다면위의주소를접속하여설치방법을보면서해도될것이 다. 아래 [ 그림 15] 와같이 SD 카드를포맷하기위한프로그램을설치한다. [ 그림 15] [ 그림 16] - 19 -

[ 그림 16] 과같이사이트로이동하게된다. 여기서왼쪽의메뉴바에서 SD Formatter 4.0 for windows Download 를클릭한다. [ 그림 17] [ 그림 17] 과같이메인프레임아래쪽에 I Accept를클릭한다. 클릭과동시에파일을다운로드한다. 파일은압축파일로되어있어압축을해제하면된다. 해제한실행파일을클릭하여설치하면된다. ( 단지 Next만클릭해주면되므로과정을생략하겠다 ) 설치가완료되면생성되는실행파일을더블클릭한다. [ 그림 18] - 20 -

[ 그림 18] 은실행파일이실행되는창이다. 실행하면삽입되어있는 SD Card 의드라 이브를선택해놓는다. 하지만인식을못했을때는 Refresh 를클릭해준다. 모든것이끝났다면 Format 을클릭하여 SD Card 를포맷한다. [ 그림 19] [ 그림 20] 포맷을누르면 [ 그림 19] 와 [ 그림 20] 과같은경고창이출력될것이다. 하지만데 이터가지워지는것에허용하겠냐고묻는창이므로확인을클릭하여넘어가도록한 다. 포맷이완료되면 Micro SD Card 에 NOOBS 의파일을옮겨야한다. 우선 NOOBS 의압축파일을해제한다. [ 그림 21] [ 그림 21] 과같이압축해제된폴더를 Micro SD Card 가잡혀있는드라이브로이동 시킨다. 폴더를모두이동했다면 SD Card 를컴퓨터에서분리한다. Micro SD Card 를 Raspberry 에설치한다. 그리고부팅을한다. - 21 -

[ 그림 22] 부팅을하면 [ 그림 22] 와같이창을볼수있을것이다. 여기서사용할 OS 를선택하 여설치한다. 우리는 Raspbian 을설치할것이기때문에맨위에보이는 Raspbian 을 선택하고 Install 을클릭한다. ( 약 20 분정도의시간이소요된다 ) [ 그림 23] - 22 -

[ 그림 23] 처럼창이나오면서설치정도를보여준다. 100% 가되면성공적으로설치 가완료되었다는창이나온다. OK 를클릭해준다. 완료가되면서 reboot 된다 [ 그림 24] 부팅이되면 [ 그림 24] 와같은설정화면이출력된다. 여기서는자신이원한다면 2 번 을선택하여암호를바꿀수도있으며여러가지의설정을조정할수있다. 우선설정할것이없다면키보드의아래방향키를눌러서 Finish 로이동한다. 그리고 Enter Key 를눌러서설정을종료한다. [ 그림 25] 설정화면이꺼지면서 [ 그림 25] 같이명령어프롬프트화면이나타난다. 이것은 Raspberry 의텍스트모드로진입한것을말한다. pi@respberrypi 에서보이는것처럼 현재 Raspberry 에성공적으로운영체제가설치된것을확인할수있다. 여기서그래픽적인사용을원한다면 Prompt 에아래와같은명령을입력해준다. $ startx 명령어가실행되면약 30 초에서 1 분가량의초기화설정을거처서 [ 그림 26] 과같이 GUI 의화면이출력된다. - 23 -

[ 그림 26] 이제설치과정을모두끝났다. 이제부터자신이원하는프로그램을하면된다. 이 작은보드가우리의상상력을충족시켜줄지는앞으로알아가봐야할것이다. - 24 -

4 우분투에 NOOBS 설치 윈도우 7 에서 NOOBS 를설치해보았다. 우분투에서도 NOOBS 를설치하는 방법을알아보도록하겠다. M ic r o S D C a rd 포맷하기 MSD(MicroSD) Card를포맷하는이유는 MSD에있는사용하지않는파일들을삭제하기위해서이며불필요한용량을확보하기위해서이다. 이를위해서는우리가포멧의형식을맞춰야한다. 그러기위해서는기본적으로파일시스템에관해서알아보도록하겠다. 1) 파일시스템컴퓨터에서파일이나자료를쉽게발견및접근할수있도록보관또는조직하는체제를가리키는말이다. 파일시스템은통상하드디스크, CD-ROM같은실제자료보관장치를사용하여파일의물리적소재를관리하는것을가리킨다. 종류는디스크, 네트워크, 특수용도의파일시스템으로나눌수있다. 가 ) NTFS(New Technology File System) 윈도우 NT 계열운영체제의파일시스템이다. MS-DOS와이전버전의윈도에서쓰였던마이크로소프트의이전 FAT 파일시스템을대체하고있다. NTFS는 FAT와 HPFS( 고성능파일시스템 ) 을거쳐몇가지개선이있다. 1 파일이름 파일이름은 255 UTF-16 코드워드로그수가제한된다. 특정이름은 볼륨루트디렉토리에남아있으므로파일에사용하지못한다. 2 최대볼륨크기 이론적으로최대 NTFS 볼륨크기는 264 1 클러스터이다. 그러나 윈도우에서제공되는최대 NTFS 볼륨크기는 232 1 클러스터이다. 3 최대파일크기이론적인최대 NTFS 파일크기는 16 EB (16 10246 바이트 ) - 1 KB (1024 바이트 ) 이고실제최대 NTFS 파일크기는 16 TB (16 10244 바이트 ) - 64 KB (64 1024 바이트 ) 이다. - 25 -

4 운영체제호환성 윈도우 NT 기반운영체제는 NTFS 파일시스템을이용한다. 5 특징 - 윈도우의기본파일시스템이다. - 보안기능이강화되어사용자별권한설정및파일단위의암호화기능등을지원한다. - FAT 에비해검색성능이뛰어나기에저장된파일의양이많아져도성능의저하가덜한다. - 4GB 이상의파일도문제없이저장가능하다. - 이런이유들로윈도우비스타와윈도우 7 은오직이 NTFS 로포맷된파티션에만설치할수있음. - 포맷할수있는최대파티션 ( 볼륨 ) 의크기로 256TB 까지지원. 나 ) ext2(second extended filesystem) 리눅스의파일시스템중하나이며 Ext를대체하기위해서고안되었다. ext2는 ext2와완전히호환가능한저널링파일시스템 2) 인 ext3로대신할때까지데비안, 레드햇리눅스를포함한몇몇리눅스배포판의기본이었다. 최대파일크기최대파일수최대볼륨크기서브디렉토리개수 16 GB - 2 TB 2-32 TB 32768개 다 ) ext3(third extended file system) ext3 는 ext2 파일시스템과의호환을목표로설계되었기때문에구조가 ext2 와 유사하다. 1 장점 1) ext2에서자료삭제및손실없이 ext3으로변경할수있다. 2) 저널링파일시스템을사용하여푸파일스스템을수정하기전에저널에수정사항을먼저기록해놓아혹시모를데이터손실을막아준다. (Journal, Ordered, Writeback) 2) 저널링파일시스템이란백업및복구능력이있는파일시스템을말한다. 디스크에있는인덱스가갱신되기전에관련내용이로그에기록되기때문에정전이나다른문제때문에인텍스에이상이생기더라도다시시스템을재가동하면운영체제가로그를보고인덱스를재작성및복구를할수있게된다. - 26 -

3) 온라인파일시스템증대 4) 큰규모의디렉토리를위한 Htree 를제공한다. 2 단점 1) 아이노드의동적할당, 다양한블록크기등의기능이부족하다. 2) extends 기능을지원하지않는다. 3) 온라인조각모음프로그램이없다. 4) Ext3 는개별파일및전체파일시스템상의최대크기에제한을 두고있다. 이러한제한은파일시스템의블록사이즈에따라 결정된다. 블록크기 파일최대크기 파일시스템최대크기 1KB 16GB 2TB 2KB 256GB 8TB 3KB 2TB 16TB 4KB 2TB 32TB ( 참고 : 8KB 블록사이즈는 8KB 페이지를허용하는아키텍터만가능 ) 5) CheckSum 을검사하지않는다. 하드웨어가캐시에기록이되지않을때, 충돌이일어나는동안 심각한파일시스템손상의위험을일으킨다. 라 ) ext4(fourth extended file system) 64비트기억공간제한을없애고 ext3의성능을향상시키며, 하위호환성이있는확장버전으로서, 많은부분이본래, 러스터파일시스템을위해 Cluster File Systems 사에서개발되었다. 1 특징 1) 대형파일시스템 최대 1EB 의볼륨과최대 16TB 의파일을지원한다. 2) Extent ext2, ext3에서쓰이던전통전인블록매핑방식을대체하기위한것이다. Extent는인접한물리적블록의묶음으로, 대용량파일접근성능을향상시키고단편화를줄인다. - 27 -

3) 하위호환성 ext3과 ext2에대한하위호환성이있어서 ext3과 ext2파일시스템을 ext4로마운트하는것이가능하다. ext4의새기능중새로운블록할당 \ 알고리즘과같은것은 ext3과 ext2에서도사용될수있기때문이다. 4) 지연된할당 Ext4는지연된할당이라고도알려진, allocate-on-flush라는파일시스템성능기술을사용한다. 이는데이터가디스크에쓰여지기전까지블록할당을지연시킨다. 따라서실제파일크기에기반하여블록할당을결정함으로인해향상된블록할당이가능하게되어하나의파링에대한블록이여러곳으로분산되는현상을막는다. 5) 32,000하위디렉터리제한없음 ext3에서하위디렉터리의수는 32,000개로제한되어있다. 이제한은 ext4에서 64,000개로늘어났으며, "dir_nlink" 기능은이보다더큰개수도허용한다. 6) 저널체크섬 Ext3 파일시스템에서없었던저널체크섬기능이추가됨으로써, 파일 시스템손상가능성이더줄어들었다. 7) 온라인조각모음 온라인조각모음기능을제공한다. 8) 빠른파일시스템검사 Ext4 는디스크검사를할때사용하지않는부분은건너뜀으로서시스템 검사를빨리할수있다. 2 단점 1) 지연된할당과데이터유실가능성모든데이터가디스크에기록되기전에발생한시스템크래시나전원차단시추가적인데이터유실위험을야기한다. - 28 -

마 ) FAT(File Allocation Table) FAT은디지털카메라등에장착되는대부분의메모리카드와수많은컴퓨터시스템에널리쓰이는컴퓨터파일시스템구조다. FAT의성능은다른파일시스템에견주어좋지않은평을받는다. 그까닭은운영시간을낭비하게만드는너무나도단순한자료구조를이용하며조그마한파일이많이있으면디스크공간을잘활용하지못하기때문이다. 1 FAT12 FAT12 는플로피디스크에파일을저장하기위해개발되었다. 2 FAT16 HDD에서사용할파일시스템의필요성이증가하게되면서 FAT16이개발된다. FAT 파일시스템은 FAT16으로확장되어서야비로소 HDD에사용할만한파일시스템이된다. 구조적으로 FAT16 은 FAT12 와거의동일하며단지 FAT16에서는클러스터를표현하는비트를 16 개로늘어난덕에이론적으로 216인클러스터를표현할수있게되었다는차이점이있다. 이는클러스터크기를 32KB로할경우 2GB까지표현가능하다. 3 FAT32 사용자가 2GB가넘는하드디스크를사용하고자한다면 FAT16의용량표현의한계때문에어쩔수없이파티션을나눠서사용하는불편을감수해야만했다. FAT32는 VFAT를기반으로수정하였으며클러스터를표현하는 bit를 32개로늘렸다. 하지만 32bit 중최상위 4bit는예약영역으로사용되지않으므로총28bit를이용해서클러스터를표현한다. 이는클러스터크기를16KB로한다면이론상최대 4TB까지가능한용량이다. 1) 특징 - 기본적으로 NTFS 에비해속도가빠르다. - 기본적인속도는빠르지만파일의검색성능이떨어지기때문에저장된파일의양이많아질수록점점느려진다. - 굉장히오래된파일시스템이기때문에윈도우는물론도스나리눅스등에서도기본으로읽을수있어호환성이좋다. - 하지만결정적으로 4GB 이상의파일은저장하지못한다는단점이있다. - 29 -

- 현재는언급한호환성의이유로 USB 플래시메모리같은이동형저장장치에서사용되는걸제외하곤거의사용되지않는다. - 포맷할수있는파티션 ( 볼륨 ) 의최대크기로원래 2TB 까지지원하지만윈도우자체적으로 32GB 를초과하는파티션 ( 볼륨 ) 은 FAT32 로포맷할수없게제한해놓았다. 실제적으로 Ubuntu 환경에서포맷을하기위해서는해당명령어를알아야하며포맷을 해주는프로그램을알아야한다. 다음은명령어와툴의사용법에관해서알아보도록 하겠다. - 30 -

가 g p a rte d 사용 Ubuntu 에서 GUI 로포맷을하게해주는응용프로그램이다. 마우스클릭으로설정과 포멧이가능하여편리하다. 우선 gparted를다운받기위해서아래와같이입력한다. # sudo apt-get install gparted 설치가종료되면 [ 그림 1] 과같이 Search 창에 gparted 를입력하면 [ 그림 2] 와 같이 gparted 의실행아이콘을볼수있다. [ 그림 1] Search 검색창 [ 그림 2] gparted 실행아이콘 Gparted 를실행하면사용자의암호를입력하는창이 [ 그림 3] 과같이나온다. [ 그림 3] 사용자의암호입력창설정한암호를입력해준다. - 31 -

입력이종료되면 [ 그림 4] 와같이 gpated 가실행이된다. [ 그림 4] gparted 실행화면 1. 각각의마운트된 HDD 및 MSD Card를확인할수있다. 기본적으로 sda는가상드라이브의 HDD로잡혀있으므로나머지인 sdd가 MSD Card인것을알수있다. ( 용량을확인해도 8GB인 MSD Card인것을확인할수있다. ) 현재 MSD Card 는 [ 그림 5] 와같이총 3 개의파티션으로나눠져있다. sdd1, sdd2, sdd3 으로나눠진것을볼수있다. 이렇게나눠진공간들을포맷을이용하여빈공간으로만들어주는과정을한후에우 리는 NOOBS 를 MSD 에설치할것이다. [ 그림 5] SD Card 의파티션들 - 32 -

MSD를포맷하기위해서는 Ubuntu에서 mount되어있는상태를해제시켜줘야한다. 이유는 mount가잡혀있다는것은상용되고있다는뜻이기때문이다. 또한포멧을하려고해도 사용중이기때문에실행할수없다 는문구가나온다. 그렇기때문에강제적으로 mount를해제해줘야한다. [ 그림 6] 과같이각파티션을마우스로오른쪽클릭하면메뉴창이나온다. 항목을살 펴보면 Unmount 라는것을볼수있는데이것이강제적으로 mount 를해제해준다. [ 그림 6] 마운트해제메뉴선택 각파티션이모두 Unmount 되었다면다음으로포맷을할때파일시스템에서공부하였듯이해당디스크의목적에따라서파일시스템을선택해야한다. 모든메모리공간을 Delete 시키면 [ 그림 7] 과같은상태가된다. Unallocated를오른쪽마우스로클릭하면 New가보일것이다. 클릭해준다. - 33 -

[ 그림 7] 새로운메모리공간할당 클릭하게되면 [ 그림 8] 과같이파티션생성창이나타나게된다. 우리는파일시스템쪽의리스트를누르면 [ 그림 8] 의가능한파일시스템이보이는데이중 fat32를선택하도록하겠다. Raspberry에서부팅과설치에제공하는파일시스템이 fat32이기때문이다. [ 그림 8] 새로운파티션생성 선택을완료하면 [ 그림 9] 와같이파일시스템이 fat32 로바뀐것을확인할수있다. 설정이완료되었다면 V 를클릭한다. [ 그림 9] 설정완료포맷시작하기 - 34 -

클릭을하면 [ 그림 10] 과같이경고창이나오는데이것은디스크에있는내용이지워지는것에대한경고메시지이다. 만약중요한내용의파일이존재하고있다면백업을하라는내용의문구이다. 우리는문제가없으므로 Apply를눌러포맷을진행하도록하자. [ 그림 10] 포맷경고창 포맷이완료되면컴퓨터에서 unmount 되어있는 MSD 를인식하지못한다. 따라서 MSD 를뺏다가재삽입하면인식이될수도있고안될수도있다. 인식이된다면문제가없지만안된다면마운트를다시설정해줘야한다. 가 ) 마운트방법 1 자동마운트방법 Modules 파일을수정하여외부디스크를삽입했을때자동으로 mount 시켜주는방법이다. 1) Modules 파일을수정하기때문에만약에있을문제를대비해 백업을한다. # sudo cp /etc/modules /etc/modules.bak 2) Modules 파일을 gedit 또는 vi 로 modules 를수정한다. # sudo gedit /etc/modules Modules 파일에 [ 그림 11] 같이 tifm_sd 입력하고저장한다. - 35 -

[ 그림 11] modules 파일 저장은완료하면시스템을리부팅시켜준다. 리부팅이귀찮다면아래의 명령문을터미널에입력한다. # sudo modprobe tifm_sd 2 수동마운트방법 자동적으로 mount 가안될경우수동적으로 mount 를잡아줘야한다. 1) Mount 3) 할포인트를생성해야한다. 외부의디바이스 (USB, CD-ROM, SD Card 등 ) 를연결하였을때연결된디바이스의디렉토리를볼수있는디렉토리가 [ 그림 12] 의 media 디렉토리이다. [ 그림 12] media 디렉토리 Media 디렉토리에 mount 할디렉토리를생성한다.( 디렉토리이름은 원하는이름으로생성해도상관없다 ) 3) 마운트는특정디바이스 (device) 를사용하기위해하드웨어장치와디렉토리를연결하는작업을의미한다. - 36 -

[ 그림 13] 마운트될디렉토리생성 2) 현재 MSD 의디렉토리가어느이름으로어디에위치하고있는지 알아야한다. # sudo lsblk [ 그림 14] 현재컴퓨터의연결된블록디바이스목록 디바이스장치들의정보를갖고있는디렉토리는 /dev 이다. 이곳에서 sdd 가존재하고 있는지확인한다. [ 그림 15] SMD 블록디바이스를확인 [ 그림 15] 와같이 SMD 가잡혀있는블록디바이스의주소 (mount point) 를확인한다. 3) 아래와같이명령어를입력한다. # sudo mount t vfat /dev/sdd1 /media/yoseop/test - 37 -

[ 그림 16] 해당디바이스장치가마운트됨 [ 그림 16] 과같이해당디바이스장치가원하는디렉토리에마운트된것을확인할 수있다. 나 NOOBS 를 MicroSD 에올리기 지금까지의내용을 NOOBS 를 MSD 에올리기위한준비과정이었다. 이제 NOOBS 을 MSD 에올리는방법을알아보도록하겠다. 1. Raspberry pi 공식홈페이지에서 NOOBS 를다운받는다. 아래의주소로접속하여 [ 그림 17] 같이 NOOBS 를다운로드한다. http://www.raspberrypi.org/downloads/ [ 그림 17] 공식홈페이지 NOOBS 다운로드 - 38 -

2. 압축을 MSD 에해제한다. NOOBS 을다운로드한디렉토리에서아래와같이압축해제를한다. # sudo unzip NOOB_v1_3_10.zip d /media/yoseop/test [ 그림 18] 마운트된 MSD 에압축을해제 - 39 -

참고 ) Unzip 으로압축을임이의디렉토리에해제할때옵션을추가해줘야한다. -d 라는옵션을주게되면자신이원하는디렉토리에압축을해제할수있다. 3. 설치완료 압축해제가완료되면 [ 그림 19] 같이마운트된 MSD 의디렉토리로이동하여 확인을해준다. [ 그림 19] 압축해제확인 이로써 MSD 에 NOOBS 설치가완료되었다. 그림 1.7 메모리시스템의구성예 - 40 -

5 Raspberry Pi 에설치하기 설치작업 1. 위에서생성한 NOOBS 을설치한 MSD 를 Raspberry 에설치한다. 그리고전원선을연결하여부팅을시도한다. [ 그림 20] 부팅화면부팅이되면 [ 그림 20] 과같은화면이나오게된다. 원하는운영체제를선택하여설치하면된다. 여기서사용할 OS를선택하여설치한다. 우리는 Raspbian을설치할것이기때문에맨위에보이는 Raspbian을선택하고 Install을클릭한다. ( 약 20분정도의시간이소요된다 ) 2. 설치가완료시설정설치가완료되면 [ 그림 24] 와같은설정화면이출력된다. 여기서는자신이원한다면 2번을선택하여암호를바꿀수도있으며여러가지의설정을조정할수있다. 우선설정할것이없다면키보드의아래방향키를눌러서 Finish로이동한다. 그리고엔터를눌러서설정을종료한다. - 41 -

[ 그림 21] raspberry 설치완료시설정 3. GUI 로 raspbian 을시작 설정까지모두마치면 [ 그림 22] 와같이터미널창이나온다. [ 그림 22] 텍스트기반의프롬프트화면 이것은 Raspberry 의텍스트모드로진입한것을말한다. pi@respberrypi 에서보이는것처럼현재 Raspberry 에 성공적으로운영체제가설치된것을확인할수있다. 여기서그래픽적인사용을원한다면프롬프창에아래와같은명령을 입력해준다. $ startx 명령어가실행되면약 30초에서 1분가량의초기화설정을거처서 [ 그림 23] 과같이 GUI의화면이출력된다. 명령어가실행되면약 30초에서 1분가량의초기화설정을거처서 [ 그림 26] 과같이 GUI의화면이출력된다. - 42 -

[ 그림 23] raspbian GUI 모드 - 43 -

6 Raspberrypi 개발환경 part1 1. 삼바 (S a m b a ) 설치 호스트PC와 raspberrypi 사이에공유디렉터리를생성하여파일을접근 (Access) 할수있다. 사용에따라서필요할수도있으며필요없을수도있다. 하지만이번에는삼바를설치하도록하겠다. 1. 삼바를설치하기전에 update 를해준다. 아래와같이명령어를입력한다. # sudo apt-get update 이와같이명령어를입력하면 [ 그림 1] 과같은화면을확인할수있다. [ 그림 1] raspberrypi 에서 update 하기 2. 삼바를설치한다. 아래와같이명령어를입력한다. # sudo apt-get install samba samba-common-bin [ 그림 2] 와같이설치되는것을확인할수있다. [ 그림 2] 삼바설치 - 44 -

3. 사용자등록과암호설정 아래와같이명령어를입력한다. # sudo smbpasswd a pi 위의명령어는 pi 라는아이디를갖는삼바의암호를설정한다는명령어이다. -a 는옵션으로여러가지의옵션중몇가지를살펴보도록하겠다. -r : 뒤에 [ 원격호스트이름 ] 이붙는다. 비밀번호를변경할삼바서버의이름을지정한다. -a : 뒤에 [ 사용자이름 ] 이붙는다. 삼바사용자계정을추가한다. -d : 뒤에 [ 사용자이름 ] 이붙는다. 삼바사용자계정을비활성화한다. -e : 뒤에 [ 사용자이름 ] 이붙는다. 삼바사용자의계정을활성화한다. -n : 사용자계정의비밀번호가없도록설정한다. 우리는사용자의이름을 pi 로설정했고다음으로원하는암호를설정하면된다. [ 그림 3] 삼바계정추가 [ 그림 3] 과같은과정을거치면 Added user pi 로성공적으로계정이추가된것을 확인할수있다. 4. 환경설정한다. 삼바를사용하는계정을추가하기위해서는환경설정을변경해줘야한다. 아래의명령어를입력한다. # sudo vi /etc/samba/smb.conf [ 그림 4] 와같은화면을볼수있을것이다. smb.conf는삼바에관련된설정파일이다. - 45 -

[ 그림 4] smb.conf 의 global 설정변경 해당위치에위와같이입력한다. [global] workgroup = WORKGROUP encrypt password = true unix charset = utf-8 charset = utf-8 #dos charset = cp949 // 네트워크공유그룹설정 // 암호설정 // 지원하는언어형식을설정 // dos에서사용되는설정 파일의맨아래로이동하여다음을입력한다. [pi] comment = Raspberry pi path = /home valid user = pi browseable = yes comment=max/samba read only = no writable = yes printable = no public = yes browsable = yes guest ok = no // 추가한계정 // 공유할폴더경로 // smbpasswd 에서설정한유저 // 읽기전용여부 // 쓰기권한여부 // 게스트계정접근허용여부 [ 그림 5] 와같이입력을마친다. - 46 -

[ 그림 5] smb.conf 의 pi 설정추가 5. 삼바데몬재시작 아래의명령어를입력한다. #sudo service samba restart #sudo /etc/init.d/samba restart 둘중하나를선택하여입력하여삼바를재시작한다. [ 그림 6] 삼바재시작 삼바가재시작된것을 [ 그림 6] 과같이확인할수있다. 6. Raspberrypi IP 주소확인 아래의명령어를입력한다. # ifconfig [ 그림 7] 과같이 rasp 의 IP 주소가출력된다. - 47 -

[ 그림 7] Rasp 의 Ip 주소확인 7. 호스트 PC 에서접속 위에서확인한 IP 주소를호스트 PC 에입력하여접속여부를확인한다. [ 그림 8] 호스트 PC 에서접속 [ 그림 8] 과같이입력을하면접속아이디와암호를입력해야한다. 이것은세번째단계에서계정을추가하고암호를설정할때입력했던아이디와암호를입력하면접속이된다. 접속이된다면 [ 그림9] 처럼삼바로설정한공유디렉터리가출력될것이다. [ 그림 9] 삼바공유디렉터리접속 1-1. 유선 LAN(eth0) 설정하기 - 48 -

Raspbian 을설치하면 IP 는유동 IP 로설정되어있다. 공유기를사용하거나개인가정 집에서사용한다면문제는없지만고정 IP 또는사설 IP 를사용하고있다면 IP 를변경 해야한다. 이를위한방법을알아보도록하겠다. 1) interfaces의설정변경아래명령어를입력한다. # sudo vi /etc/network/interfaces [ 그림 10] 과같이유선과무선으로나뉘어설정이가능하도록되어있다. 우리는유선 LAN을설정하도록하겠다. [ 그림 10] 유선랜설정변경파일 interfaces - 49 -

아래와같이 Ip를설정하게되면 [ 그림 11] 과같이작성된다. #iface lo inet loopback // 주석 #iface eth0 inet dhcp // 주석 --------- 입력----------- auto eth0 iface eth0 inet static address [ip주소] network [ip주소에마지막을 0으로 ] netmask [ 서브넷마스크 ] gateway [ 기본게이트웨이 ] broadcast [ 기본DNS서버 ] [ 그림 11] 변경된 interfaces 2) networks 를재시작 # sudo /etc/init.d/networking restart 3) resolv.conf 설정변경 현재까지는내부와의통신만이정상적으로이루어지도록설정되어있기때문에외 - 50 -

부인터넷이가능하도록하기위해서 /etc/resolv.conf 에서 DNS 값을추가수정해야 한다. 아래의명령어를입력한다. # sudo vi /etc/resolv.conf [ 그림 12] 수정된 resolv.conf 이로써모든유선 LAN 을변경하는모든설정이완료되었다. - 51 -

2. S S H 원격접속 (W in d o w ) Raspberrypi는개발자가개발하기에는사양이많이부족하다. 따라서성능이좋은호스트PC에서개발하는것이효율적이다. 그러기위한방식이윈도우에서 SSH를이용한원격제어를알아보도록하겠다. 1. raspberrypi 에서 SSH 활성화확인 확인을위해서는아래의명령어를입력한다. # sudo raspi-config 위와같이입력을하면 [ 그림 13] 을볼수있다. [ 그림 13] rasp 의설정창 여러가지의옵션중에 4 번은선택하고 Enter 를누르면 [ 그림 14] 와같이 SSH 를 사용여부를묻는메뉴가보인다. [ 그림 14] Configure advanced settings A4 SSH를선택하여 Enter를누르면 [ 그림 15] 와같이 SSH Server를사용할것인지를묻는창으로넘어간다. - 52 -

[ 그림 15] SSH 사용여부선택창 <Enable> 을선택하여 Enter 를누른다. [ 그림 16] 처럼 SSH Server 를사용하도록 허용해준다. [ 그림 16] SSH 를사용 Rasp 에서 SSH 설정이끝났다면호스트 PC 에서는 Rasp 에접속하기위해서한가지 프로그램이필요하다. 바로 Putty 라는프로그램이다. 2. Putty 의공식홈페이지에접속 - 53 -

http://www.chiark.greenend.org.uk/ 로접속한다. [ 그림 17] Putty 공식홈페이지 원하는버전의 putty 를다운로드한다. - 54 -

3. Putty 로 SSH 접속 다운로드한 putty 를사용하여 Rasp 에 SSH 를이용하여원격접속을시도한다. [ 그림 18] putty 설정 첫번째 Rasp 에접속하는타입을선택한다. 우리는 Rasp 에 SSH 를활성화시켰기 때문에 SSH 타입으로선택한다. 두번째 Rasp 의 IP 주소를입력한다. 세번째매번접속할때마다설정해야하는번거로움을없애기위해서설정값을 구별하기위한이름을적는다. 네번째저장한다. 다섯번째모든것이완료되면 open 을클릭하여접속의유무를확인한다. 정상적으로설정이완료되었다면 [ 그림 19] 와같은화면이출력된다. - 55 -

[ 그림 19] putty 로 rasp 접속확인 rasp 에서설정한아이디인 pi 와해당암호를입력하면접속이완료된다. [ 그림 20] 접속이완료됨 - 56 -

2. S S H 원격접속 (Lin u x ) Raspberrypi는개발자가개발하기에는사양이많이부족하다. 따라서성능이좋은호스트PC에서개발하는것이효율적이다. 그러기위한방식이 Linux에서 ssh를이용한원격제어를알아보도록하겠다. 1. 우분투에 ssh 를설치한다. 아래의명령어를입력한다. $ sudo apt-get install ssh-server 설치가완료되면 ssh 를설정할수있다. 기본적으로설정된되로사용해도 무방하다. 하지만기본적인설정에대해서알아보도록하겠다. ssh 설정을하려면아래의파일을수정해야한다. $ sudo vi /etc/ssh/sshd_config 파일에들어가면 [ 그림 21] 과같이 ssh 프로토콜에관련된설정들이나와있다. [ 그림 21] - 57 -

IgnoreRhosts yes -------- 자동로그인파일무시 PermitRootLogin no ------ root로그인금지 AllowGroups sudo ------- sudo( 관리자 ) 그룹만로그인가능 AllowUsers : 이곳에등록된계정만접속가능함. DenyGroups : 모두접속이허용, 여기에등록된 group만접속거부됨. DenyUsers : 모두접속이허용, 여기에등록된계정만접속거부됨. 예 1) test1 와 test2 만 ssh 접속을허용 space bar 로구분한다. AllowUsers test1 test2 예 2) 모든유저의접속을허락하고 help 라는유저의접속을막는다. DenyUsers help 로그인가능 2. Raspberrypi 에접속한다. ssh 설치가완료되었다면 raspberrypi 에접속이되는지를확인해야한다. ssh 로접속하기위해서는아래와같은형식의명령어를입력해야한다. $ ssh [option] [UserName@HostName] l UserName : 사용자의아이디로 rasp에서사용하고있는아이디를말한다. ( 기본적으로 pi로설정되어있다.) l HostName : 서버의도메인네임또는 IP주소를말한다. rasp에서사용하고있는 IP주소를적으면된다. 이밖에도옵션과특수문자에대해서알아보겠다. 옵션 (Option) -p : port 번호를지정한다. default는 22번포트를사용하지만서버의설정에따라서다른포트를사용하고있을수도있다. -X : X11 포워드를활성화시킨다. -x : X11 포워드를비활성화시킨다. 특수문자 ~. : 접속끊기 ~^Z : ssh 를백그라운드로돌린다. (fg 를사용하여되돌린다 ) - 58 -

~? : 특수문자들의리스트를보여준다 실제로위의명령어를입력하면 [ 그림 22] 와같이해당 Host 의암호를입력하게 된다. 암호는 rasp 에서설정한암호를사용한다. [ 그림 22] 암호입력까지성공하면 [ 그림 23] 과같이 pi 의프롬프트가보이게된다. 이것이 확인되면정상적으로 ssh 가설치되고설정까지알맞게된것이다. [ 그림 23] - 59 -