라즈베리파이 기본 설정 (OS 부터 필수 패키지 설치까지)
라즈베리파이 보드를 구매했을 때 실사용을 위한 기본적인 설정을 하는 방법입니다.
라즈베리파이 B+,라즈베리파이 2 B 모델로 테스트 했습니다. 본인의 개발 환경에 따라 조금씩 틀린 부분이 있을 수 있으나 대부분의 내용은 그대로 적용이 가능합니다.
준비물
- Raspberry Pi B+ 또는 Raspberry Pi 2 B 보드
- micro SD 카드 (8GB 이상 class 10 추천)
- 키보드, 마우스, 모니터 (기본 설정용)
- 랜선 및 공유기
- 전원 공급용 어댑터 (휴대폰 충전기 등) 및 USB 케이블
(케이스, 방열판 등을 구매하신 경우 미리 장착해 두세요.)
운영체제 설치
데비안 리눅스의 라즈베리 파이용 버전 Rasbian “wheezy”를 설치해야 합니다. 최신 이미지 파일이 배포되고 있으므로, 이미지 파일을 받아서 microSD 카드에 구워주고 microSD 카드로 부팅하면 됩니다.
- Win32DiskImager 로 이미지를 SD카드에 써야한다. 아래 링크에서 프로그램을 다운로드 및 설치
http://sourceforge.net/projects/win32diskimager/ - Rasbian OS 이미지 다운로드
http://www.raspberrypi.org/downloads - OS 이미지가 준비되면 Win32DiskImager를 실행
- OS 이미지를 선택해주고 microSD 카드 드라이브를 선택. 그리고 Write 해줍니다!!
기본 설정
여기서 microSD 카드를 라즈베리파이에 넣고 공유기에 랜 케이블로 연결한 다음 Putty(SSH 어플)을 이용해서 접속해도 됩니다. 원격으로 나머지 설정작업을 하는거죠. (기본 계정 ID/PW = pi/raspberry)
일단 여기서는 랜 케이블을 바로 물리지 않고, 모니터(HDMI cable), 마우스, 키보드를 이용해서 직접 설정하는 방법으로 설명하겠습니다. microSD 카드와 전원도 연결해서 OS 부팅이 시작되도록 합니다.
Raspberry Pi Software Configuration Tool (raspi-config) 이 자동으로 실행됩니다. 여기서 바꿔줄 설정은…
- 메모리 용량 변경
1 Expand Filesystem 선택 (처음에는 microSD 카드가 4GB 정도만 인식되는 상태입니다. 원래 용량만큼 인식되도록 해주는 작업) - pi 계정 비밀번호 변경
2 Change User Password 선택
(pi 계정 비밀번호를 원하는 대로 변경) - Hostname, SSH enable 설정 (최신 OS 이미지에서는 default enable 상태임)
8 Advanced options 선택
A2 Hostname 선택해서 원하는 이름 설정
A4 SSH 선택해서 enable로 설정 - 국가별 설정
4 Internationalisation Options 선택
I2 Change Timezone : Asia/Seoul 설정
I3 Change Keyboard Layout : Generic 105 key (Intl) PC – Korean, 이하 default 선택
I1 Change Locale : en_GB.UTF-8 UTF-8, en_US.UTF-8 UTF-8, ko_kr.UTF-8 UTF-8, ko_kr.EUC-KR EUC-KR – default: ko_KR.UTF-8 - <Finish> 선택 해서 설정 메뉴 종료 후
- 아래 명령으로 재부팅
sudo shutdown -r now
재부팅 완료되면 pi 계정으로 로그인
- login: pi
- Password: xxxxxxxx (변경한 비밀번호 입력)
root 비밀번호를 변경합니다. 아래 명령어 실행
- sudo passwd root
(=> 비밀번호 2번 입력) - su –
(=> 방금 변경한 비밀번호 입력) - root@hostname:~#
이렇게 뜨면 root 로그인 성공한겁니다.
Profile 설정
profile 설정은 console 상태에서 사용하기 편하도록 몇 가지 설정을 해두는 겁니다. (.bashrc 파일) 상세 내용은 Link 에서 확인할 수 있습니다. 현재 root 계정으로 로그인된 상태에서 아래 명령어를 입력합니다.
- nano /root/.bashrc
그러면 nano 에디터가 실행됩니다. 아래 라인들 주석(#)을 제거하세요
export LS_OPTIONS='--color=auto' eval "'dircolors'" alias ls='ls $LS_OPTIONS' alias ll='ls $LS_OPTIONS -l' alias l='ls $LS_OPTIONS -lA' alias rm='rm -i' alias cp='cp -i' alias mv='mv -i'
Ctrl+x => y => enter 눌러서 저장합니다. 쉘로 빠져나오면 exit 명령으로 root 로그아웃합니다.
- exit
pi 계정으로 돌아오면 pi 계정도 마찬가지의 작업을 해줍니다.
- nano /home/pi/.bashrc
color 설정은 되어 있으므로 alias 명령어 몇 개만 풀어주면 됩니다. 아래 라인들…
alias ll=’ls -l’
alias la=’ls -A’
alias l=’ls -CF’
기본 설정이 끝났으니 일단 라즈베리파이 종료
- shutdown -h now
Network 설정
기본 설정이 다 되었으니 마우스, 키보드, 모니터 필요 없습니다. 이제 이더넷 케이블과 전원선만 연결하고 적당한 위치에 놔둔 다음 원격으로 접속해서 작업하면 됩니다. 준비되면 전원 연결해서 부팅이 되도록 합니다.
PC 브라우저에서 공유기 ip로 접속합니다. 제 경우엔 http://192.168.0.1 로 접속…
- admin 아디/비번 입력해서 설정 페이지로 들어갑니다.
- 내부 네트워크 정보 확인해서 라즈베리파이의 IP 확인합니다.
- Putty 프로그램을 설치합니다. 원격 접속 프로그램입니다.
접속하기 전 putty 설정을 변경합니다.
- 설정 : Window -> Control the scrollback in the window – Lines of scrollback : 9999 로 변경
putty에서 한글 깨짐 현상이 나오지 않도록 설정합니다.
- 설정 : Window -> Translation -> Remote character set : UTF-8
앞선 단계에서 확인한 라즈베리파이의 IP를 Host name(or IP address) 란에 입력합니다. 준비가 되면 save 버튼으로 현재 설정을 저장해 두고 ‘열기’ 버튼으로 접속합니다.
- ID/PW 입력해서 정상적으로 로그인이 되는지 확인하세요.
로그인이 되면 먼저 설치된 패키지 업데이트 부터 합니다.
- sudo apt-get update
- sudo apt-get upgrade
한글 폰트부터 설정합니다. 아래 명령어 순서대로 입력
- sudo apt-get install ttf-unfonts-core
- sudo apt-get install ttf-unfonts-extra
- sudo apt-get install ibus
- sudo apt-get install ibus-hangul
라즈베리파이용 linux 고정아이피를 세팅합니다. 재부팅 등에도 IP가 변하지 않도록 하기 위함입니다. 상세내용은 Link를 참고하세요.
- interfaces 파일 수정. 아래 명령어를 입력합니다.
sudo nano /etc/network/interfaces
아래 두 항목을 주석 처리
- #iface lo inet loopback
- #iface eth0 inet dhcp
아래 내용을 추가합니다. 각 항목에 들어가는 값을 잘 모르겠으면 (Windows 키 + R ==> cmd ==> ipconfig) 으로 확인합니다.
auto eth0 iface eth0 inet static address 192.168.0.1 # 자신의 IP netmask 255.255.255.0 network 192.168.0.0 broadcast 192.168.0.255 gateway 192.168.0.1 dns-nameservers 168.126.63.1 168.126.63.2
네임서버를 설정합니다. 아래 명령어 입력
- sudo nano /etc/resolv.conf
아래 내용이 맞는지 확인 (KT DNS)합니다. 기본으로 입력되어 있을겁니다.
- nameserver 168.126.63.1
- nameserver 168.126.63.2
네트웍 재시작합니다.
- sudo /etc/init.d/networking restart
이제 외부에서도 라즈베리파이에 Putty로 접속할 수 있도록 공유기를 설정합니다. 포트 포워딩 기능을 이용합니다.
- PC 브라우저로 공유기 ip 접속
- 포트 포워딩 설정 메뉴로 들어갑니다.
- 외부 네트웍에서 제어가 가능하도록 SSH 포트를 맵핑해 줍니다. 아래와 같이…
- IP – protocol – 외부 포트 – 내부 포트
- 192.168.0.xxx all 8922 22
- (IP는 라즈베리파이의 IP 입니다)
위 설정은… 외부에서 공유기의 8922 번 포트로 접속하면 공유기가 자동으로 내부 IP(라즈베리파이)의 22번 포트로 연결시켜 준다는 의미입니다.
추후 사용할 계획이 있다면 FTP(21), HTTP(80), HTTPS(443) 도 포트 포워딩 설정 해두시면 좋겠네요.
기타 설정
samba 서버를 설치합니다. samba는 윈도우 탐색기에서 라즈베리 파이의 공유 폴더가 보이도록 해줍니다. FTP 프로그램 없이 탐색기에서 쉽게 파일을 교환할 수 있습니다.
아래 명령어로 samba 설치합니다.
- sudo apt-get install samba samba-common-bin
samba 계정 추가 및 암호 설정
- sudo smbpasswd -a pi
(=> 암호입력)
samba 계정 접근환경 설정. nano 에디터로 설정 파일을 불러옵니다.
- sudo nano /etc/samba/smb.conf
파일 끝에 아래 내용 붙여넣기 하세요.
[global] workgroup = WORKGROUP encrypt passwords = true unix charset = utf-8 charset = utf-8 [pi] comment = pi/samba path = /home/pi read only = no writable = yes printable = no public = yes browsable = yes guest ok = no
samba 서비스 재시작 합니다.
- sudo /etc/init.d/samba restart
윈도우 탐색기에서 주소란에 [\\IP\pi] 경로로 samba 공유 폴더가 보이는지 확인합니다. (IP/PW 입력 필요)
일반적으로 많이 사용하는 프로그램들을 미리 설치해 둡니다.
- sudo apt-get install ssh vim zip
FTP 서버 설치
- sudo apt-get install proftpd
- 설치 막바지에 실행 형태를 물어보면 standalone 선택
설치된 어플리케이션 들을 최신으로 업데이트 해줍니다.
- sudo apt-get update
- sudo apt-get upgrade
기타 기본 설정은 아래 사이트 참고하세요.
http://sonhc.tistory.com/433, http://codens.tistory.com/364