원문 : http://herlim.tistory.com/83
라즈비안, 외장하드 마운트, samba서버, ftp서버, 토렌트 서버, xbmc(kodi) 설치 과정
준비물
- 마이크로SD카드(리더기), HDMI 케이블, 전원어댑터, 외장스토리지, 키보드, 모니터, 다른 PC
- USB 전원어댑터는 마이크로 usb(스마트폰용)로 왠만하면 2A 이상, 외장하드는 1TB로 붙임
- 마이크로 SD카드는 8기가면 충분
1. 마이크로 SD카드에 라즈비안 포팅
1-1. 공식사이트에서 라즈비안(RASPBIAN)을 받음- 토렌트로 받으면 빠르다.
- http://www.raspberrypi.org/downloads/
* OSMC는 XBMC OS인데 라즈비안보다 가볍다. 미디어센터만 쓸꺼면 OSMC가 가볍다.
1-2. 라즈비안을 USB메모리에포팅.
- http://sourceforge.net/projects/win32diskimager/에서 Win32 Disk Imager 다운
- Image File에 라즈비안 이미지, Device가 대상 마이크로 SD 카드, Write 클릭
1-3. 라즈베리파이 HDMI케이블로 모니터와 연결, 키보드, 전원, 랜 연결, 파워 온.
2. 라즈비안 초기설정
2-1. 시작하면 아래와 같이 초기설정이 나온다.
- 필요시 나중에 프롬프트 상에서 들어 갈 수 있다
$ raspi-config |
* 선택 : 스페이스 바, 아래줄 이동 : 탭키
1) 1. Expand Filesystem을 선택, 마이크로 SD카드의 나머지 빈 공간을 확장(엔터, 엔터)
→ 마이크로 SD카드의 미지정된 파티션을 활성화시켜서 사용 가능하게 함
2) 2. Change User Password를 선택 PI 계정 비밀번호를 바꿔준다
3) 4. Internationalisation Options 선택
→ I1 Change Locale 선택, ko_KR.UTF-8 UTF-8 선택, 엔터, 엔터
→ I2 Change Timezone 선택, Asia 선택, Seoul 선택
→ I3 Change Keyboard Layout 선택, Generic 105-key (Intl) PC 선택, Other, Korean 선택,
Korean - Korean (101/104 key compatible) 선택, 엔터, 엔터
4) Advanced Options 선택, A4 SSH 선택해서 SSH 활성화(디폴트로 활성회 되어 있어 안해줘도 SSH 접속됨)
- 나중에 언제든지 다시 선택할 수있으니 대충해도 된다
탭키로 finish로 나가고 자동으로 재부팅
2-2. IP주소 확인 (ssh 접속을 위해서)
$ ifconfig |
2-3. 여기서 부터는 ssh로 작업(윈도우에서 접속) putty : https://www.putty.org/
장점은 ClipBoard에 복사된 내용을 터미널의 커서위에 두고 우클릭만하면 내용이 자동으로 복사 되어 일일이 타자 안해도 되는것이다.
가끔 apt-get install 한는 경우 permission error 가 나는 경우가 있어 나는 install 만은 본체로 실시한다.
- putty 설정은 아래와 함께 IP주소 넣고 Open, font 설정을 해도 좋음.
- log-in : pi, password : 아까 바꿔준 걸로 (추후 변경 가능)
* ID넣고 Passwd기다리는데 6~7초 정도 딜레이 해결방법(기다리려면 안해도 됨)
1. $ sudo nano /etc/pam.d/sshd
#session optional pam_motd.so # [1] ==> 주석처리
2. $ sudo nano /etc/ssh/sshd_config
GSSAPIAuthentication no ==> 해당 옵션을 no 로 설정
UseDNS no (해당 옵션을 추가=>이것만 하면 됨.(재확인 완료)
3. $ sudo service ssh restart
오류 발생시 ssh 접속 안되니 주의해서 작업할 것.
2-4. root 계정 비밀번호 변경
$ sudo passwd root |
2-5. 최신 업데이트 체크 및 실행
$ sudo apt-get update $ sudo apt-get upgrade |
3. 외장하드 연결
3-1. 초기에는 전력 제한으로, 외장하드 연결시 작게 삑삑거리고 HDD 인식 불가.
(R-Pi2 USB 500mA 공급하나, 요즘 나오는 SATA3 HDD는 700mA 필요.)
$ sudo nano /boot/config.txt 아래 옵션 두 개를 가장 상단에 추가(전력을 2A로 올린다) max_usb_current=2 safe_mode_gpio=4 |
* nano 저장하고 나갈때 : Cont'l+O, Enter, Cont'l+X
3-2. 재부팅 후 확인
- 재부팅
재부팅 : sudo reboot 또는 sudo shutdown -r now
셧다운 : sudo shutdown -h now
$ sudo shutdown -r now |
- 이제 외장하드를 연결해도 무리가 없다 (물론 어댑터는 2A 이상 필요)
- 2개의 외장하드를 사용하는 경우 유전원 허브를 이용한다.
- HDD 연결 확인
$ sudo blkid * 아래와 같이 sda에 뭔가 추가되었다면 연결된 것이다. /dev/mmcblk0p1: SEC_TYPE="msdos" LABEL="boot" UUID="15CD-3B79" TYPE="vfat" /dev/mmcblk0p2: UUID="13d368bf-6dbf-4751-8ba1-88bed06bef77" TYPE="ext4" /dev/sda1: LABEL="M-lM-^CM--3M-<M-kM-%M-(" UUID="0AFE67C5F263A6F3" TYPE="ntfs" |
3-3. 외장하드가 ntfs로 설정된 경우 ntfs 인식을 위해 ntfs-3g 설치
$ sudo apt-get install ntfs-3g |
* 참고로 파일시스템을 exfat을 쓰려면 아래와 같이 설치
$ sudo apt-get install exfat-fuse |
3-4. 마운트할 폴더를 만듭니다(원하는 곳에).
$ sudo mkdir /home/pi/exHDD |
3-5. 누구나 읽고 쓰고 지울 수 있게 권한 설정
$ sudo chmod -R 777 /home/pi/exHDD |
3-6. 자동 마운트 설정. (외장하드가 하나인 경우)
$ sudo nano /etc/fstab |
- 마지막줄 추가 : /dev/sda1 /home/pi/exHDD ntfs defaults 0 0
proc /proc proc defaults 0 0 /dev/mmcblk0p1 /boot vfat defaults 0 2 /dev/mmcblk0p2 / ext4 defaults,noatime 0 1 # a swapfile is not a swap partition, so no using swapon|off from here on, use dphys-swapfile swap[on|off] for that /dev/sda1 /home/pi/exHDD ntfs defaults 0 0 |
3-7. 재부팅
$ sudo shutdown -r now |
4. samba 설정
4-1. samba 설치
$ sudo apt-get install samba samba-common-bin |
4-2. samba 계정설정
$ sudo smbpasswd -a 삼바계정(RPI2에 설정된 계정 중 하나로 선택해야 한다.) |
* samba의 경우 사용자를 자체 관리하지만 linux 기본 사용자를 기반으로 사용자를 만들수 있다.
다시 말해 linux 에 등록된 사용자만이 삼바 사용자로 추가될 수 있다.
만약 linux 사용자에 없는 사용자를 삼바에 추가하려 한다면 아래의 오류가 출력된다.
pi@raspberrypi ~ $ sudo smbpasswd -a test New SMB password: Retype new SMB password: Failed to add entry for user test. |
* 정상 사용자를 선택한 경우 아래와 같이 smb 사용자가 추가된다.
* 만약 현 라즈베리파이2의 사용자가 아닌 새로운 smb 사용자를 등록하려면 라즈베리파이2 사용자로 먼저 등록 후에 해야 한다.
라즈베리파이2의 사용자 등록은 아래와 같다.
그런 연후 smb계정을 추가한다.
4-3. samba 서버 정지(안꺼면 안된단다)
$ sudo /etc/init.d/samba stop |
4-4. samba 서버 설정
$ sudo nano /etc/samba/smb.conf |
* 푸른색 설명은 제외해야 함. [global] workgroup=WORKGROUP dos charset = CP949 display charset = UTF8 unix charset = UTF8 #랜섬웨어 등 보안관련 SMB v1을 제외하기위해 min protocol = SMB2 max protocol = SMB2 현 samba 3.6.6은 SMB v2.0까지 지워한다고함. #client가 윈도우10 버전 1803 이상인 겨우, 확인 http://blog.daum.net/hevyflat/303 #아래 그냥 이거 복사해서 갖다 붙이세요. [Raspberry] ##윈도우에서 표시되는 이름 comment = [유저설정 맘대로] valid users = [위에서 설정한 계정] path = /home/pi/exHDD guest ok = no writable = yes browseable = yes create mask = 0777 directory mask = 0777 |
* 저장하고, 나온다(콘트롤 O, 엔터, 콘트롤X).
4-5. samba 시작
$ sudo /etc/init.d/samba start |
* 정 지 : sudoservice smbd stop
재시작 : sudo service smbd restart
현재 접속자확인 및 공유항목 확인: smbstatus
현재 접속자확인 : smbstatus --shares
samba 정보확인 : testparm (smb.conf의 내용을 간추려 보여줌)
windows PC에서 아래와 같이 확인
4-6. 윈도우 탐색기에 드라이버로 연결하면 내 PC의 HDD처럼 편리하게 사용할 수 있다.
1) 윈도우 탐색이에서 네트워크의 RASPBERRYPI를 클릭, 확장한다.
2) 위 4-4(smb.conf)에서 설정한 폴더(Raspberry)와 기본폴더(Pi)가 보이는데우리가 연결하여 사용할
Raspberry 폴더에 마우스 우클릭하여 네트워크 드라이브 연결을 클릭한다.
3) 아래와 같이 드라이브 이름을 설정하고 로그온할 때 다시 연결을 체크한다.
4) 윈도우 탐색기에 Raspberry 드라이브가 새로운 드라이브로 설치 된 것을 볼 수 있다.
5. ftp 설정
5-1. vsftpd 설치
$ sudo apt-get install vsftpd |
5-2. vsftpd 설정
$ sudo nano /etc/vsftpd.conf |
그냥 아래와 중복되는 거 다 주석 처리하고 맨 밑에 갖다 붙이세요. (검색: Ctrl + w) listen=YES anonymous_enable=NO local_enable=YES write_enable=YES ascii_upload_enable=YES ascii_download_enable=YES chroot_local_user=YES ## ftp 접속시 vsftpd.chroot_list에 있는 계정 외에는 상위 폴더로 이동 금지 chroot_list_enable=YES chroot_list_file=/etc/vsftpd.chroot_list ## ftp 접속포트 변경. 기본 포트 21 listen_port=1234(포트를 1234로 변경하는 경우에만) |
- 저장
5-3. ftp 계정 생성
$ sudo nano /etc/vsftpd.chroot_list |
- fpd에 사용할 계정이름을 아래와 같이 그냥 나열하면 됩니다.
- 저장
5-4. ftp 재시작
$ sudo service vsftpd restart |
5-5. ftp 확인
- 안드로이드폰에서는 es 파일 탐색기, windows에선 파일질라 클라이언트, 기타 등등등으로 접속 확인
그런데 알ftp로 전송하니 Server쪽에 있는 한글이름으로 된 화일은 깨져서 보이고 이쪽으로 전송도 안된다. 파일질라로 하니 잘 된다.
6. transmission (토렌트 서버 구성)
6-1. transmission-daemon 설치
$ sudo apt-get install transmission-daemon |
6-2. transmission-daemon 정지 (정지 안하면 아예 수정이 안된다)
$ sudo /etc/init.d/transmission-daemon stop |
6-3. 토렌트 폴더 생성
$ sudo mkdir /home/exHDD/torrent_down |
6-4. 토렌트 시드파일 폴더 생성
$ sudo mkdir /home/exHDD/torrent_seeds |
6-5. transmission 설정 수정(transmission-daemon 정지해야 수정 됨.)
- 설정 내에서는 주석처리가 안된다.
- { (대괄호)와 " (따옴표) 주의
$ sudo nano /etc/transmission-daemon/settings.json |
"download-dir": "/home/exHDD/torrent_down", ## 다운 완료 된 파일 폴더
"incomplete-dir": "/home/exHDD/torrent_down", ## 다운 중인 폴더 설정
"rpc-password": "계정비번", ## 입력하면 다음 접속시 자동으로 해쉬값으로 바뀐다.
"rpc-port": 9091, ## (원하는 포트로)
"rpc-username": "계정명", ## transmission 접속시 필요계정
"rpc-whitelist-enabled": false, ## true 설정 시 rpc-whitelist의 IP접속가능, 아무데서나 붙어야죠
"script-torrent-done-enabled": true,
"script-torrent-done-filename": "/home/pi/Scripts/AutoDelete.sh",#다운완료시 토렌트목록 자동삭제
#디렉토리와 파일이름은 임의적임.알아서 변경
"trash-original-torrent-files": true, ##다운시작시 시드파일 자동삭제 (출처)
"watch-dir": "/home/exHDD/torrent_seeds", ## 이 폴더에 시드파일 넣으면 자동으로 토렌트 다운
"watch-dir-enabled": true
* 콤마 안찍거나 더 찍으면 몇번째줄 잘못되었다고 표시해 주니 다시한번 확인해보면 됨.
* ,(콤마) 주의. 각 줄마다 ,가 들어가고 마지막엔 ,를 안찍는다.
6-5-1 다운완료시 토렌트 목록삭제 스크립트 폴더 만들기
pi@raspberrypi ~ $ sudo su (매번 sudo 를 사용하기 귀찮으니 슈퍼유저 권한으로 변경) root@raspberrypi:~# mkdir /home/pi/Scripts root@raspberrypi:~# chmod 777 /home/pi/Scripts root@raspberrypi:~# chown -R pi /home/pi/Scripts |
6-5-2 스크립트 제작
root@raspberrypi:~# nano /home/pi/Scripts/AutoDelete.sh |
* 밑에 복사하고 나서 빨강글자는 모두 삭제해야 함.
#!/bin/sh SERVER="포트번호 --auth 아이디:비번" : /etc/transmission-daemon/settings.json에 설정하였던 포트번호, 아이디, 비번을 정확하게 입력하도록 주의. TORRENTLIST=`transmission-remote $SERVER --list | sed -e '1d;$d;s/^ *//' | cut --only-delimited --delimiter=" " --fields=1` for TORRENTID in $TORRENTLIST do DL_COMPLETED=`transmission-remote $SERVER --torrent $TORRENTID --info | grep "Percent Done: 100%"` STATE_STOPPED=`transmission-remote $SERVER --torrent $TORRENTID --info | grep "State: Seeding\|Stopped\|Finished\|Idle"` if [ "$DL_COMPLETED" ] && [ "$STATE_STOPPED" ]; then transmission-remote $SERVER --torrent $TORRENTID --remove fi done |
6-5-3 실행 가능하게
root@raspberrypi:~# chmod +x /home/pi/Scripts/AutoDelete.sh |
6-6. transmission-daemon 시작
$ sudo /etc/init.d/transmission-daemon start |
6-7. 웹에서 확인
- 웹브라우저 주소줄에 192.168.1.4:9091 넣는다(라즈베리파이 IP:트랜스미션 Port No.)
안드로이드 폰, 윈도우, 맥 등에서 Remote Transmission 깔아서 설정해 주면, uTorrent 처럼 쓸 수 있다.
- https://code.google.com/p/transmisson-remote-gui/
7. xbmc(kodi) 설치
7-1. 소스 리스트 추가
$ sudo nano /etc/apt/sources.list |
deb http://archive.mene.za.net/raspbian wheezy contrib 추가함.
7-2. 위의 키 값 업데이트
$ sudo apt-get update |
7-3. 설치
$ sudo apt-get install kodi |
7-4. 추가 리포
$ sudo aptitude update $ sudo aptitude install kodi |
7-5. 일단 한번 실행. (원격이 아닌 로컬에서 직접 실행)
$ sudo kodi |
- Reboot
ssh로 작업 진행
7-6. 설정 추가
$ sudo nano /etc/udev/rules.d/99-input.rules |
SUBSYSTEM=="input", GROUP="input", MODE="0660"
KERNEL=="tty[0-9]*", GROUP="tty", MODE="0660"
7-7. 비디오메모리 추가설정 : 기본값으로 하면 재생시 많이 느림
$ sudo nano /boot/config.txt |
gpu_mem=256 ## 넉넉하게
7-8. 부팅시 kodi 자동실행시킬 경우만
- 아래 설정에서 ENABLED=1 로 놓으면 라즈베리파이를 켜면 자동으로 kodi 가 실행됨
==> kodi만 쓸 바에야 OSMC 설치가 백번 좋다
$ sudo nano /etc/default/kodi |
7-9. 아래 그룹에 kodi 계정을 추가해 줍니다.
$ sudo adduser kodi adm $ sudo adduser kodi input |
7-10. 재부팅 후 kodi 실행
- 7-8설정했으면 kodi 자동실행, 아닌 경우 kodi 입력 후 엔터
7-11. kodi 한글설정
1) System → Settings → Appearance → Skin → Fonts 설정에서 Arial based로 변경
2) 그 밑에 International에서 language → korean 으로 변경
3) 한글나옴.
7-12. 스마트폰으로 kodi 컨트롤 하기(Yatse 등 스마트폰용 어플 이용시)
- 시스템 → 설정 → 서비스 → 원격제어 "이시스템의 프로그램에 의한 원격제어 허용" 선택
7-13. 웹브라우저에서 Kodi 컨트롤(웹브라우저 주소창에 kodi의 해당 IP 192.168.0.4:8080접속으로 제어)
- 시스템 → 설정 → 서비스 → 웹서버 "HTTP를 통한 원격제어 허용" 선택
7-14. 다른 설치방법
'IT > 라즈베리파이2' 카테고리의 다른 글
X 윈도우에서의 단축키 (0) | 2015.06.20 |
---|---|
터미널에서 자주쓰는 명령어 단축키 만들기 - alias (0) | 2015.06.20 |
크로미움 버전업 22 >>37 (0) | 2015.06.19 |
크로미움을 삭제하려는데 잘 안되는 경우 (0) | 2015.06.19 |
라즈비안 구글 크로미움 설치해서 다음TV 동영상보기 (0) | 2015.06.18 |