티스토리 뷰
예전 글, Synology에 Flexget 설치하기는 bootstrap/ipkg 기반으로 설명이 되어 있는데, 아래는 Entware-ng와 조금 더 최신 버전의 flexget을 기준으로 한다. 상세한 환경은 다음과 같다.
- Synology DSM 5.2 (6.0 아님)
- Flexget 2.3.40
가이드는 공식 홈페이지의 이 글을 따른다.
1. opkg 설치
먼저 링크를 타고 opkg를 설치한다. 1에서 6번까지 쭉 따라하면 되는데, 다만 4에서는 아래와 같이 /etc/rc.local에 첫번째 줄만 등록한다.
/bin/ln -sf /volume1/@entware-ng/opt /opt
위는 그냥 부팅할 때마다 심볼링 링크를 걸어서 opkg 환경을 마련한다는 것이고, 두번째 줄은 /opt/etc/init.d의 패키지들을 몽땅 시스템 시작시 실행하겠다는 것이다. 문제는 transmission 같은 경우에 무조건 root 유저로 실행하게 되므로, 보안상 바람직하지 않다.
2. dependency 설치
기반 언어인 python과 핵심 다운로드 기능을 하는 transmission을 설치한다. 예전에는 web 기능이 하나로 합쳐져 있어서 transmission-daemon만 설치하면 되었는데 2.9x로 넘어오면서 분화된 것 같다.
opkg install python python-pip transmission-daemon-openssl transmission-web transmission-cli-openssl transmission-remote-openssl
나같은 경우는 필요한데, telegram bot을 설치해 준다.
pip install python-telegram-bot
3. flexget 설치
pip install flexget
버전확인을 위해 flexget -V를 하면 에러가 발생하는데 이 글을 참조해서 수정하면 된다.
vi /opt/lib/python2.7/site-packages/past/translation/__init__.py
vi /opt/lib/python2.7/site-packages/libfuturize/fixes/__init__.py
첫번째 파일에서는 41, 42번 라인을 주석처리, 두번째 파일에서는 2번째 라인을 주석처리.
4. 자동실행 설정
먼저 /etc/rc.local 맨 마지막에 아래를 등록
initctl emit opt-ready
그리고 나서, /etc/init/transmission-daemon.conf에 다음을 등록
description "Transmission"
author "YOUR NAME"
start on opt-ready
stop on runlevel [06]
respawn
respawn limit 5 10
console log
expect fork
setuid downloader
env TRANSMISSION_WEB_HOME=/opt/share/transmission/web
exec /opt/bin/transmission-daemon
여기서 downloader는 transmission이 실행되는 유저명이다.
비슷하게 flexget 자동 실행을 위해서 /etc/init/flexget.conf에 다음을 등록한다.
description "FlexGet"
author "YOUR NAME"
start on opt-ready
stop on runlevel [06]
respawn
respawn limit 5 10
console log
setuid downloader
exec /opt/bin/flexget daemon start
pre-stop exec /opt/bin/flexget daemon stop
마지막으로 synology DSM 메이저 업데이트에서는 /etc/init 내용이 날아가기 때문에 재설정이 필요하다고 한다.
'생활 속 > 홈서버' 카테고리의 다른 글
[Synology DSM 6] 언제나 https로 리다이렉트 하기 (17) | 2016.11.25 |
---|---|
Synology에 Flexget 설치하기 3 (26) | 2016.11.16 |
RT-N56U에 Entware-ng (16) | 2016.10.05 |
ASUS RT-N56U Cloudflare를 이용한 DDNS (34) | 2016.09.22 |
let's encrypt ssl 인증서 https + n56u (26) | 2016.09.16 |