개발자의 서재

리눅스와 함께하는 라즈베리 파이

지구빵집 2015. 11. 20. 16:51
반응형




리눅스와 함께하는 라즈베리 파이 


<<리눅스와 함께하는 라즈베리 파이>>에서는 놀랍고도 작은 라즈베리 파이 컴퓨터를 시작하기 위해 알아야 하는 모든 것을 다루고 있다. 두 명의 리눅스 전문가가 라즈베리 파이에 모니터와 키보드, 마우스, 인터넷 등을 연결하는 방법, 그리고 데스크톱 설정을 변경하는 방법 등을 속속들이 파헤친다. 여러분은 리눅스 커맨드라인을 파고들며 라즈베리 파이 전문가를 향한 첫 발걸음을 내딛고, 배시를 비롯한 다양한 쉘과 명령을 습득하여 진정한 파워 유저로 거듭날 것이다.






저자소개


저자 : 피터 멤브리


저자 피터 멤브리(Peter Membrey)는 공인 IT 전문가로서 15년간 리눅스와 오픈 소스 솔루션에 몸담았다. 17살부터 RHCE(Red Hat Certified Engineer, 레드햇 공인 엔지니어)로서 활동하고 있는 피터는 레드햇에서 일하는 영광을 누리기도 했다. 또한, 오픈 소스 솔루션 관련 책도 몇 권 집필했다. 그는 리버풀 대학에서 IT 관련 석사 학위(정보 보안)를 취득했고, 현재 홍콩 폴리테크닉 대학에서 박사 학위를 준비하고 있다. 그의 연구 분야는 클라우드 컴퓨팅, 빅 데이터 과학, 보안 등이다. 현재 피터 멤브리는 홍콩에서 멋진 아내 새라와 아들 케이딘과 함께 살고 있다. 다만, 그의 광둥어 실력은 나날이 퇴보하고 있다.


저자 : 데이비드 하우스


저자 데이비드 하우스(David Hows)는 호주 뉴사우스웨일즈 소재 울런공(Woolongong) 대학을 우수한 성적으로 졸업했다. 데이비드가 처음으로 컴퓨팅에 몸담게 된 것은 큰돈을 들이지 않고도 집에 있던 컴퓨터의 성능을 높이고자 갖은 노력을 기울였던 때로 거슬러 올라간다. 그의 IT 경력은 그렇게 시작되어 시스템 관리자, 성능 엔지니어, 소프트웨어 개발자, 솔루션 아키텍트, 데이터베이스 엔지니어 등을 두루 거쳤다. 데이비드는 여러 해째 축구에 갖은 노력을 기울였지만 허사였다. 그의 커피잔에는 ‘Grumble Bum(투덜이)’라는 문구가 선명하다.


역자 : 배장열


역자 배장열은 현재 교육용 스마트폰 앱 기획, 개발에 몰두하고 있는 옮긴이는 대학에서 기계를, 대학원에서 컴퓨터를 전공했다. 학교를 졸업하고 몇 년간 소프트웨어 로컬라이제이션에 힘썼고, 몇 군데 대학에서 시간강사를 했다. 그러다 가르치는 일에 재미가 들려 한동안 강사 일을 하기도 했다. 지금은 좋은 책을 소개하는 데 도움이 되고자 번역에 많은 정성을 기울이고 있다. 옮긴 책으로는 《아빠와 함께 배우는 스크래치 프로그래밍 어드벤처》(2014), 《파이썬으로 배우는 라즈베리 파이 프로그래밍》(2013년), 《빅 데이터 어떻게 활용할 것인가》(2013년), 《라즈베리 파이 시작하기》(2013년), 《인스파이어드》(2013년), 《아론 힐리가스의 오브젝티브-C 프로그래밍》(2012년), 《프로 안드로이드 미디어》(2011년) 등이 있다.


목차

1장 라즈베리 파이 한 조각 1 

따끈따끈한 파이가 도착하다 2 

재료 목록 4 

마이크로 USB 케이블 5 

USB 전원 어댑터 5 

HDMI 케이블 6 

HDMI 지원 디스플레이 7 

SD 카드 7 

SD 카드 리더 8 

USB 키보드와 마우스 9 

휴, 모두 정리했다! 10 

당황하셨어요? 10 

리눅스 11 

리눅스란 무엇인가? 11 

라즈비안 다운로드하기 14 

SD 카드에 라즈비안 넣기 15 

윈도에서 이미지 라이터 사용하기 15 

맥에서 dd 사용하기 19 

첫 시동 24 

파이 설정하기 26 

파일시스템 확장하기 27 

키보드 설정하기 28 

패스워드 변경하기 31 

로케일 설정하기 32 

시간대 변경하기 33 

메모리 할당하기 34 

드디어 설정 완료! 36 

정리 38 


2장 경치 감상하기 39 

LXDE, 첫 만남 40 

우리가 누릴 수 있는 것들 42 

시작 메뉴와 작업표시줄 42 

오른쪽에는 무엇이 있을까? 44 

시작 메뉴 45 

Accessories(보조 프로그램) 47 

Education(교육) 55 

Internet(인터넷) 58 

Programming(개발) 60 

System Tools(시스템 도구) 62 

Preferences(기본 설정) 63 

정리 65 


3장 익숙해지기 67 

고색창연한 컴퓨터 68 

덤 터미널에 인사를 건네다 69 

현대적 터미널 70 

왜 아직도 이런 유물에 신경 써야 할까? 71 

터미널의 세 가지 종류 74 

콘솔 74 

GUI로 가상 터미널 열기 75 

SSH로 연결하기 76 

커맨드라인의 세계로 84 

다른 쉘 88 

정리 89 


4장 성공으로 가는 파일의 경로 91 

파일 정리 시스템이란? 92 

이런저런 파일시스템 94 

분리형 루트 94 

통합형 파일시스템 95 

어디에도 속하지 않는 맥 96 

이 모든 것을 하나로 96 

모든 것은 파일로 통한다 97 

파일시스템 배치도 100 

/ (루트 디렉터리) 100 

/root 100 

/etc 101 

/proc 101 

/var 101 

/boot 102 

/bin과 /sbin 102 

/dev 102 

/home 103 

/lib 103 

/lost+found 103 

/mnt 104 / 

media 104 

/usr 104 

/opt 104 

/srv 105 

/sys 105 

/tmp 105 

총정리 105 

실전으로 뛰어들기 106 

지금 여기는 어디일까? pwd 사용하기 106 

또 무엇이 들었나? ls 사용하기 107 

가지고 놀 파일 만들기: touch 사용하기 108 

파일을 저장할 곳: mkdir 사용하기 109 

새로운 디렉터리 사용하기: mv 명령 사용하기 110 

복제의 시간: cp 명령 사용법 110 

파괴 본능: rm 명령 사용하기 112 

완벽 경로와 상대 경로 114 

사용자와 그룹 115 

파일 권한 116 

파일 권한 설정하기 120 

바로 가기와 링크 125 

정리 127 


5장 필수 명령 129 

보스 되기 130 

RTFM 133 

시스템 리소스 모니터링 134 

작동 시간과 로드 평균 135 

태스크 136 

CPU 사용 백분율 136 

메모리 사용량 137 

프로세스 테이블 138 

메모리 할당 상태를 파악하기 위한 free 사용하기 138 

디스크 사용량 139 

프로세스 관리하기 142 

파일 명령 147 

명령 결합하기 150 

사용자 환경 154 

cron 명령 158 

정리 160 


6장 커맨드라인에서 파일 편집하기 161 

텍스트 파일이란? 162 

경쟁자들 164 

나노 시작하기 166 

도대체 어떻게 사용하라는 것일까? 167 

파일 저장하기 169 

나노에 적응하기 172 

나노 총정리 174 

빔 시작하기 174 

빔의 모드 176 

변경 내용 저장하기 177 

빔에서 나가기 179 

빔에서 찾기 180 

특정 행으로 이동하기 182 

빔에 적응하기 182 

빔에서 삭제하기 184 

그 밖의 사소한 명령들 186 

비주얼 모드 187 

텍스트 들여쓰기 188 

정리 190 


7장 파이 관리하기 191 

파이에 원격으로 액세스하기 192 

네트워크 192 

DNS 193 

SSH 193 

BASH: 기본 코딩 언어 194 

배시(BASH)란? 195 

배시 시작하기 195 

인터프리터 언어 vs. 컴파일러 언어 197 

배시의 출력 198 

훑어보기 200 

변수 200 

논리 연산: if 201 

테스트 조건에 따른 연산 202 

문제 해결 206 

논리 연산: 루프 208 

문제 해결 211 

배시 활용: init 스크립트 212 

case문으로 하나씩 골라잡기 214 

애플리케이션 안에서 애플리케이션 실행하기: 포크(fork) 215 

run 파일 업데이트하기 215 

직접 init 스크립트 만들기 216 

보안과 사용자 관리 219 

라즈비안 보안의 규칙 219 

새로운 사용자 추가하기 220 

정리 222 


8장 세상에 하나뿐인 램프 223 

첫 발걸음 224 

리눅스의 L 225 

아파치의 A 225 

아파치 구성 설정 228 

문제 해결 233 

MySQL의 M 233 

MySQL 설치하기 234 

구조화된 쿼리 언어(Structured Query Language) 235 

PHP의 P 249 

간단한 웹 앱 253 

HTML 253 

웹 페이지 시작하기 256 

데이터베이스 콘텐츠 표시하기 258 

웹 사이트에서 데이터 삽입하기 260 

데이터베이스에 삽입하기 263 

삭제 기능 추가하기 264 

DB에서 데이터 삭제하기 266 

문제 해결 267 

이제 어디로? 268 

정리 269 


9장 와이파이(WiPi): 무선 컴퓨팅 271 

와이파이(WiPi) 준비하기 272 

간단한 제약부터 풀기 273 

입력 장치 제거하기 273 

원격 GUI 추가하기 274 

와이파이(WiFi)로 구현하는 진정한 와이파이(WiPi) 279 

GUI 와이파이 설정 284 

커맨드라인에서 와이파이 관리하기 287 

마지막 남은 하나 290 

전원의 필요성 없애기 291 

유전원 USB 어댑터 292 

정리 293 


10장 라즈베리 스파이(sPi) 295 

필요한 재료 296 

사전 준비 297 

시작하기 297 

dmesg 297 

문제 해결 302 

모션 캡처 302 

문제 해결 308 

경계경보 발령! 308 

SSMTP 설치하기 309 

mutt 설치하기 및 사용하기 312 

경보 시스템 테스트하기 313 

문제 해결 315 

모두 합치기 316 

문제 파악하기 316 

결정하기 317 

솔루션 디자인하기 318 

스크립트 1 322 

스크립트 2 323 

테스트하기 325 

문제 해결 327 

이제 어디로? 328 

정리 330 


11장 파이 미디어 센터 331 

XBMC 비디오 332 

설치하여 빌드하기 334 

sed와 정규식으로 파일 변경하기 339 

소스 코드 컴파일하기 341 

문제 해결 344 

XBMC 시작하기 및 사용하기 345 

자동으로 시작하는 XBMC 348 

문제 해결 349 

에어플레이(Airplay)로 음악 스트리밍하기 350 

문제 해결 356 

자동으로 시작하는 에어포트(Airport) 356 

정리 357


책 속으로


정말로 모든 사람이 군침을 흘리도록 만드는 것은 무료로 생각해도 될 만한 컴퓨터 하드웨어가 아니다. 그보다는 리눅스를 운영할 수 있는 온전한 컴퓨터라는 점이다. 이는 서버를 의미하고, 홈 오토메이션과 비디오 스트리밍을 의미하며, 상상할 수 있는 그 무엇도 가능하게 한다는 것을 의미한다. 

_xxiii 


최근 들어 컴퓨팅 환경이 나아지기는 했어도, 리눅스 시스템에서 실행되는 소프트웨어 가운데 가장 변덕스러운 것이 바로 그래픽 인터페이스일 것이다. 그래픽 인터페이스가 항상 가장 중요한 것처럼 보여도 서버가 부팅하지 않는다거나 복구 환경이 필요하게 되면, 그래픽 인터페이스를 사용할 수 있는 가능성은 거의 없다. 하지만 터미널은 리눅스와(그리고 다른 유닉스 기반 운영체제와) 소통하기 위한 본질적 방법이며, 이런 이유에서 터미널은 언제 어떤 형태로든 사용할 수 있는 도구다. 터미널 사용법을 익히면 쓰라린 아픔에서 벗어나 커맨드라인에 익숙하지 않아 쩔쩔맸을 상황을 완벽하게 헤쳐 나갈 수 있다. 

_73 


이제 재미있는 주제를 다루어 보자! 한 명령의 출력을 다른 명령의 입력으로 써먹을 수 있도록 명령들을 결합하여 협업하는 능력을 다룰 것이다. 여기서는 여러 명령을 매우 자세하게 들여다볼 것이다. 자세히 들여다볼수록 그 환상적인 능력이 두드러지기 때문이다. 하지만 우선 명령들을 어떻게 결합할 수 있는지 이해해야 하는데, 사실 별로 어렵지 않은 개념이니 걱정할 까닭은 없다. 명령들을 결합하려면 파이프 기호(|)를 사용한다. 

_150 


그림으로도 알 수 있듯, 아직 이더넷 케이블이 연결되어 있다. 이제부터 다룰 내용은 파이에서 무선 어댑터를 설정하는 방법이다. 커맨드라인으로 설정하는 방법과, GUI로 설정하는 방법을 함께 다룰 것이다. 우선, 시작하기에 앞서 어떤 작업을 해야 하는지부터 명확하게 알고 있어야 한다. 쉘에서 lsusb 명령을 실행한다. 이 명령은 ls와 같다. 다만 디렉터리와 파일이 아닌 USB 장치가 나열된다. 

_281 


라즈베리 파이를 스트리밍 음악 시스템으로 꾸미려는 사람이 많다. 다시 말해, 성능 좋은 스피커를 갖춰놓고 리모컨으로 제어하면서 중앙 제어 시스템에서 음악을 스트리밍하는 환경을 탐내는 것이다. 이미 시중에서 이런 환경을 갖춘 시스템을 적잖이 선보였다. 여기서는 애플의 에어플레이(Airplay) 프로토콜을 활용하기로 한다. 이를 구현하기 위해서는 파이시즈(Pisces)에서 작업해도 좋고, 라즈비안 자체로 돌아가 작업해도 좋다. 에어플레이 프로토콜은 두 시스템에 똑같이 적용될 수 있기 때문이다. 

_350 닫기


출판사 서평


라즈베리 파이의 상자를 여는 것부터 리눅스 활용까지 한 권에 모았다! 

주머니에 쏙 들어가는 라즈베리 파이를 활용하여 웹 서버에서 보안 카메라까지 다양한 프로젝트 수록! 


《리눅스와 함께하는 라즈베리 파이》에서는 놀랍고도 작은 라즈베리 파이 컴퓨터를 시작하기 위해 알아야 하는 모든 것을 다루고 있다. 두 명의 리눅스 전문가가 라즈베리 파이에 모니터와 키보드, 마우스, 인터넷 등을 연결하는 방법, 그리고 데스크톱 설정을 변경하는 방법 등을 속속들이 파헤친다. 


여러분은 리눅스 커맨드라인을 파고들며 라즈베리 파이 전문가를 향한 첫 발걸음을 내딛고, 배시를 비롯한 다양한 쉘과 명령을 습득하여 진정한 파워 유저로 거듭날 것이다. 


이 책에서 다루는 주요 내용은 다음과 같다. 

* 파이의 데스크톱 환경을 커스터마이즈하는 법 

* 파이로 작업하기 위한 필수 명령 소개 

* 파이를 네트워크에 연결하는 법 

* 케이블이 모두 배제된 무선 파이 구축법 

* 웹 서버, 경보 시스템을 갖춘 보안 카메라, 미디어 센터로의 파이 활용법




반응형