라즈베리파이를 어디에 쓸데가 없을까 고민하다가 봇에 대한 잡담중에 우연히 떠오른 아이디어(?) 웹크롤링, 토렌트 서버 등을 이용해서 토렌트를 찾아서 자동으로 다운로드해주는 봇을 만들어보자로 시작.
혹시 이런게 있을까 싶어 구글링(토렌트 봇으로 구글링) 하면 웬만한건 다있다는 말을 새삼 깨달음. telegram Bot API를 이용 토렌트를 자동으로 다운받은 여러 프로그램들을 이미 존재하고 github에도 공개되어 있었음. 그것도 2016년에 유행
그래도 해보면 재미있을거 같아 시작.
[참고 사이트]
redreamer님 블로그 Telebot을 이용한 원격 토렌트 다운로드 시스템와 HTG의 How to Turn a Raspberry Pi into an Always-On BitTorrent Box을 기반으로 정리함. 작업하면서 동시에 정리하는 게 제일 좋을거 같은데 동시에는 마음이 급해서인지 어려움이 많다. 개요파악 - 관련 지식 습득 - 계획(시나리오) - 작업 - test - 정리 가장 좋은 절차라고 생각하나 늘 이상과 현실은 다름.
작업 순서 : ntfs-3g 설치 -> 파티션 삭제 -> 포멧 -> 마운트 -> 부팅시 자동 마운트 설정
pc 접근 및 응급조치 용이를 위해 M$ Windows 파일 포멧으로 외장하드 구성, 리눅스에서 Windows 파포멧 인식을 위해 ntfs-3g 설치
sudo apt-get install ntfs-3g
외장하드 디스크 마운트
외장하드 연결결과 확인
pi@boriliketree:~ $ sudo fdisk -l
##### SSD 8 G - OS
Device Boot Start End Sectors Size Id Type
/dev/mmcblk0p1 8192 137215 129024 63M c W95 FAT32 (LBA)
/dev/mmcblk0p2 137216 15523839 15386624 7.3G 83 Linux
Disk /dev/sda: 111.8 GiB, 120034123776 bytes, 234441648 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: dos
Disk identifier: 0x40b96660
### 포터볼 외장하드 120G
Device Boot Start End Sectors Size Id Type
/dev/sda1 2048 234441647 234439600 111.8G 83 Linux
pi@boriliketree:~ $ df -h
Filesystem Size Used Avail Use% Mounted on
/dev/root 7.1G 5.0G 1.9G 73% /
devtmpfs 459M 0 459M 0% /dev
tmpfs 463M 0 463M 0% /dev/shm
tmpfs 463M 48M 416M 11% /run
tmpfs 5.0M 4.0K 5.0M 1% /run/lock
tmpfs 463M 0 463M 0% /sys/fs/cgroup
/dev/mmcblk0p1 63M 21M 42M 33% /boot
/dev/sda1 112G 69M 112G 1% /media/usbhdd1
tmpfs 93M 0 93M 0% /run/user/1000
tmpfs 93M 0 93M 0% /run/user/0
pi@boriliketree:~ $ cat /etc/fstab
proc /proc proc defaults 0 0
/dev/mmcblk0p1 /boot vfat defaults 0 2
/dev/mmcblk0p2 / ext4 defaults,noatime 0 1
/dev/sda1 /media/usbhdd1 ntfs defaults,noatime 0 0
# a swapfile is not a swap partition, no line here
# use dphys-swapfile swap[on|off] for that
$ sudo vi /etc/samba/smb.confsudo apt-get install samba samba-common-bin
$ sudo vi /etc/samba/smb.conf
[Finetree]
comment = Share Folder
path = /media/usbhdd1/shares
valid users = @users
force group = users
create mask = 0600
directory mask = 0771
read only = no
시스템 유저 생성
$ sudo useradd finetree -m -G users
$ sudo passwd finetree
samba 사용자 등록
$ sudo smbpasswd -a backups
Telegram Bot 구성
참고 - Set Up Telegram Bot on Raspberry Pi
deluge 설치 및 설정
#Start Deluge on boot:
sudo -u pi /usr/bin/python /usr/bin/deluged
sudo -u pi /usr/bin/python /usr/bin/deluge-web
telegram-control-torrent 설치 및 설정
#Start telegram_torrent on boot -2017.04.16
sudo -u pi /home/pi/telegram-control-torrent/telegram_torrent.py 2&>> /home/pi/telegram-control-torrent/telegram-control.log
다운로드 후 Plex에서 라이브러리 업데이트 안되는 현상 발생 -> 해결 : 수동 업데이트 설정
The top option, “Update my library automatically”, is the ideal one. Nearly every Plex user should check it. The only time automated library updates aren’t a viable solution is for Plex users with their media stored on a different computer from the Plex Media Server program (since the automatic detection of folders doesn’t typically work for folders on a network share).
참고 - How to Update Your Plex Media Library, Manually and Automatically
개선 필요사항