[Raspberry pi] - 1편 라즈베리파이(Raspberry Pi) PLEX 최적화
1편에서 지금 사용중인 SD카드의 속도 문제를 발견한 후, 잠깐의 고민 끝에 SD카드를 구매하기로 했다.
PLEX 트랜스코딩을 위한 임시디렉토리만 USB 메모리로 빼 줘도 눈에 띄게 성능이 좋아지는데, DB엑세스, Swap 등이 발생할 때에도 File IO 속도가 더 빨라진다면 얼마나 성능이 개선될까? 라는 막연한, 그러나 근거없지는 않은, 기대 때문이다.
SD카드에 대한 여러 후기를 살펴본 후, 결정한 제품은 Samsung EVO Class 10 32GB.
스펙 상으로는 전송속도 최대 48MB/s 라고 하지만 최대는 최대일 뿐, 그정도까지 기대하지는 않는다.
SD카드가 바뀌면 결국 라즈비안(Raspbian) 부터 새로 깔아야 한다.
기본적인 내용이라 포스팅하지 않았던 내용이지만 이번에 새로 설치하면서 같이 포스팅 하기로 했다.
재설치니까, 아무래도 처음보다 삽질은 줄어들테고, 보다 최적화할 수 있지 않을까? 라는 혼자만의 생각이다.
자 설치 시작
우선 공식 사이트에 들어간다.
https://www.raspberrypi.org/downloads/raspbian/
17년 4월자 Raspbian Jessie 새 버전이 릴리즈 되었다.
최적화가 목적이니 가벼운 Raspbian Jessie Lite 버전으로 다운로드 받는다.
용량은 약 300MB라 그냥 zip 파일로 받아도 무리없다.
다운로드가 완료되면 준비된 SD카드에 바로 압축을 해제한다.
여기서 주의할 점은 SD카드를 삽입하고 fdisk -l 에서 나오는 장치명에서 뒤에 파티션번호를 뺀 순수 장치명만 인자로 넣어야 한다는 점이다.
예를들어 아래와 같이 출력된다면,
$ sudo fdisk -l
.....................................중략.............................
Device Boot Start End Sectors Size Id Type
/dev/sdb1 8192 62552063 62543872 29.8G c W95 FAT32 (LBA)
/dev/sdb1 에서 1을 뺀 /dev/sdb로 지정해야 한다.
sdb 1번 파티션에 파일을 복사하는게 아니라, sdb 장치에 굽는 것이기 때문이다.
$ unzip -p 2017-04-10-raspbian-jessie-lite.zip | sudo dd of=/dev/sdb bs=4096 status=progress
1295548416 bytes (1.3 GB, 1.2 GiB) copied, 36.0009 s, 36.0 MB/s
316861+0 레코드 들어옴
316861+0 레코드 나감
1297862656 bytes (1.3 GB, 1.2 GiB) copied, 36.3416 s, 35.7 MB/s
벌써부터 기대되는 속도로 파일을 기록했다.
파일쓰기가 완료되면 sd카드를 라즈베리파이(Respberry Pi)에 꽂고 전원을 인가한다.
라즈비안(Respbian) 최초설치 시에는 HDMI 케이블과 모니터, 키보드를 준비해야 한다.
ssh가 비활성 상태라 최초 한번은 ssh를 활성화해야 하기 때문..
부팅이 완료되면 로그인, 초기 id와 패스워드는 pi, raspberry 이다.
콘솔에 로그인 한 후에 바로 ssh만 살리자. 우선 IP 주소 확인.
$ if config
eth0 Link encap:Ethernet HWaddr b8:27:eb:69:a8:ff
inet addr:192.168.0.8 Bcast:192.168.0.255 Mask:255.255.255.0
................ 후략................
그리고 설정화면에 진입
$ sudo rasp-config
5번 Interfacing Options 선택
P2 SSH 선택
Yes 선택
Ok
이제 컴퓨터에서 ssh로 접속하여 설정하자.
$ ssh pi@192.168.0.8
아직 패스워드는 raspberry 이다.
접속에 성공하면 다시 설정화면에 들어가서 패스워드 부터 바꾸자.
$ sudo raspi-config
1 Change User Password 선택
Ok
새로운 패스워드 두번 입력
Enter new UNIX password:
Retype new UNIX password:
passwd: password updated successfully
완료
터미널에서 들어가니 사진 안찍고 스크린 캡춰할 수 있어 편하다. ^^;
이제 Timezone과 locale 설정을 하자.
4 Localisation Options 선택
I1 Change Locale 선택
라즈베리파이가 영국재단이라 en-US 대신 en-GB가 기본으로 설정되어 있다.
en_US.UTF-8 과 ko_KR.EUC-KR 을 찾아서 스페이스바를 누르면 선택이 된다.
선택이 다 되면, 엔터키를 누르자.
그리고 Default locale을 en_US로 지정해주자.
엔터를 치면 넘어가지만 정확하게 <ok>를 선택하고 싶으면 키보드 좌우 화살표를 움직이면 된다.
다시 첫화면에서 4 Localisation Options 선택
이번에는 I2 Change Timezone 선택
Asia
Seoul
Advanced Options 에 Expand Filesystem 등이 있지만, 이미 32GB SD카드 메모리를 모두 사용하고 있어 불필요해 보인다.
셋팅을 하고 빠져나오니 warning 이 떠있다.
perl: warning: Setting locale failed.
perl: warning: Please check that your locale settings:
LANGUAGE = (unset),
LC_ALL = (unset),
.....................
LANGUAGE와 LC_ALL이 셋팅되어있지 않아서 나오는 문제로, 아래와 같이 셋팅해주면 된다.
$ sudo update-locale LANGUAGE="en_US.UTF-8" LC_ALL="en_US.UTF-8"
$ sudo locale-gen
$ sudo reboot
여기부터는 개인 설정 (선택)
1. 계정 변경
개인적으로는 pi라는 사용자를 disable 하고 다른계정을 생성해서 사용한다.
pi@raspberrypi:~ $ sudo adduser cmlee
perl: warning: Setting locale failed.
perl: warning: Please check that your locale settings:
LANGUAGE = (unset),
LC_ALL = (unset),
LC_PAPER = "ko_KR.UTF-8",
LC_ADDRESS = "ko_KR.UTF-8",
LC_MONETARY = "ko_KR.UTF-8",
LC_NUMERIC = "ko_KR.UTF-8",
LC_TELEPHONE = "ko_KR.UTF-8",
LC_IDENTIFICATION = "ko_KR.UTF-8",
LC_MEASUREMENT = "ko_KR.UTF-8",
LC_TIME = "ko_KR.UTF-8",
LC_NAME = "ko_KR.UTF-8",
LANG = "en_GB.UTF-8"
are supported and installed on your system.
perl: warning: Falling back to a fallback locale ("en_GB.UTF-8").
Adding user `cmlee' ...
Adding new group `cmlee' (1001) ...
Adding new user `cmlee' (1001) with group `cmlee' ...
Creating home directory `/home/cmlee' ...
Copying files from `/etc/skel' ...
Enter new UNIX password:
Retype new UNIX password:
passwd: password updated successfully
Changing the user information for cmlee
Enter the new value, or press ENTER for the default
Full Name []:
Room Number []:
Work Phone []:
Home Phone []:
Other []:
Is the information correct? [Y/n] y
pi와 동일한 그룹에 추가
sudo usermod -a -G adm,dialout,cdrom,sudo,audio,video,plugdev,games,users,input,netdev,spi,i2c,gpio cmlee
pi 계정 로그인 차단
$ sudo vi /etc/passwd
pi:x:1000:1000:,,,:/home/pi:/usr/sbin/nologin
2. ssh 기본포트 변경
기본포트만 변경해도 해킹위험이 훨씬 줄어든다.
$ sudo vi /etc/ssh/sshd_config
#Port 22
Port 1022
$ sudo service ssh restart
$ netstat -na |grep 22
tcp 0 0 0.0.0.0:1022 0.0.0.0:* LISTEN
tcp 0 0 192.168.0.8:22 192.168.0.16:57838 ESTABLISHED
tcp6 0 0 :::1022 :::* LISTEN
현재 22번으로 붙어있지만, 1022로 LISTEN 포트가 바뀌었음이 확인된다.
여기까지 기본적인 라즈비안(Raspbian) 설정이 끝났다.
번외로 SD속도 시험을 다시 해보았다.
$ sudo dd count=1k bs=1M if=/dev/zero of=~/test.img
1024+0 records in
1024+0 records out
1073741824 bytes (1.1 GB) copied, 72.9925 s, 14.7 MB/s
Class 10 이상의 속도는 나오지만 은근 기대한 48MB/s는 아니었다.
'Raspberry pi' 카테고리의 다른 글
라즈베리파이에 Node.js 설치 (0) | 2017.04.29 |
---|---|
3편 PLEX 최적화 - PLEX Media Server 재설치 (2) | 2017.04.29 |
7편 스마트 콘센트? Smart Plug! + Node.js Push 서버 (Firebase 등록) (0) | 2017.04.27 |
6편 스마트 콘센트? Smart Plug! + Node.js Push 서버 (개요편) (0) | 2017.04.25 |
라즈비안(Raspbian) 시간동기화 (0) | 2017.04.23 |