本章主要记录群晖安装Transmission和Flex插件,实现rss订阅自动下载资源。
Transmission安装及优化
Transmisstion的安装
群晖添加套件来源http://packages.synocommunity.com/
在社群里就可以安装Transmission了比较简单。安装完毕后会在群晖添加名为sc-download的群组,为了使Tr有下载目录的权限,需要在控制面板→用户群组中设置sc-download对应目录的读写权限。
这里说一下Transmission的下载任务备份,直接备份安装目录下的var目录(含设置文件)我的路径是:/volume1/@appstore/transmission/var,还原就直接覆盖吧,复制完后记得修改文件权限。
Transmission的WebUI
我使用的有两种:
- 一种是自带的WebUI增强,功能更强大支持移动端。
中文项目地址:https://github.com/ronggang/transmission-web-control/wiki/Home-CN,可以按需选择安装方法。
我选择的是ssh安装代码摘抄如下:
1 | cd /volume1/@appstore/transmission |
- 另一种是客户端形式
客户端名字是Transmission Remote GUI,项目地址:https://github.com/transmission-remote-gui/transgui
Flexget安装
新版FlexGet支持Python 3.6-3.8,群晖的套件中心还是3.5版的,根据官方文档更新了本教程。
python3.6安装
首先卸载群晖套件安装的python,然后还是通过原来的方法安装3.6版,就是使用Entware-NG的opkg源。
1、
1 | mkdir -p /volume1/@entware-ng/opt |
2、如果原来安装过可以先清除相关文件,然后创建软连接:
1 | rm -rf /opt |
3、安装Entware-NG的opkg源:
- for armv5
1 | wget -O - http://pkg.entware.net/binaries/armv5/installer/entware_install.sh | /bin/sh |
- for armv7
1 | wget -O - http://pkg.entware.net/binaries/armv7/installer/entware_install.sh | /bin/sh |
- for x86-32
1 | wget -O - http://pkg.entware.net/binaries/x86-32/installer/entware_install.sh | /bin/sh |
- for x86-64
1 | wget -O - http://pkg.entware.net/binaries/x86-64/installer/entware_install.sh | /bin/sh |
- for MIPS
1 | wget -O - http://pkg.entware.net/binaries/mipsel/installer/installer.sh | /bin/sh |
群晖一般选择的是x86-64
。
4、由于DSM6.0开始/etc/rc.local
作为引导我们想要的程序已经不行了。需要制作自定义启动脚本,直接用vi来编辑:
1 | sudo vi /usr/local/etc/rc.d/entware-startup.sh |
加入以下代码:
1 | #!/bin/sh |
5、在/root/.profile
文件末尾添加:
1 | . /opt/etc/profile |
它将添加/opt/bin
并添加/opt/sbin
到PATH变量以进行交互式登录。
最后重启!
开始安装Flexget
使用root账户登录ssh:
1 | opkg install python3 |
1 | rm /opt/bin/python |
1 | pip3 install -–upgrade pip |
1 | pip install flexget |
通过flexget -V
验证是否安装成功。
最后安装
1 | pip install transmissionrpc |
结束,然后直接跳转到运行教程。
以下是老教程
官方网站https://flexget.com/,Flexget的功能很多需要慢慢学习
Flexget需要python的支持,群晖可以在套件里安装,官方的说明:FlexGet supports Python 2.7, 3.3, 3.4 and 3.5. Python 3.6 is not yet supported,正好群晖里的版本是3.5.1-0108。
官方有两种推荐方法一种是在Docker里安装,一种是Local Python package,还有一种不推荐的方法就是安装套件社群里的安装包。我选择推荐的第二种,有一点小变动,也是网上搜索的
,往下看:
安装前的准备python
- pip安装和更新
1 | cd /volume1/@appstore/py3k/usr/local/bin |
- 顺便创建一个easy_install的软链接,万一以后使用easy_install安装软件也方便了
1 | ln -sf easy_install-3.5 easy_install |
virtualenv的方式安装flexget
以下命令都在目录/volume1/@appstore/py3k/usr/local/bin下
- 安装virtualenv
1 | ./pip3.5 install virtualenv |
- 创建Flexget的virtualenv环境,我是安装在/volume1目录下,可以共享,方便日志查看。
1 | ./virtualenv /volume1/flexget/ |
进入flexget/bin文件夹
1 | cd /volume1/flexget/bin |
启动virtualenv 环境
1 | source activate |
启动后在命令行左侧有标示 flexget
- 安装Flexget
1 | pip3.5 install flexget |
安装完毕后bin文件夹里就有flexget文件了
- 安装Flexget所需的transmissionrpc
1 | pip3.5 install transmissionrpc |
安装完毕退出virtualenv环境
1 | deactivate |
以后使用flexget命令就在/volume1/flexget/bin/flexget
Flexget的运行
在flexget文件夹加入自己的配置文件config.yml。
运行官方推荐加入服务的方式,但是我喜欢修改crontab的方法
路径:/etc/crontab
修改加入以下参数:
*/15 * * * * root /volume1/flexget/bin/flexget execute
意思是每隔15分钟运行,然后重启crontab服务
1 | synoservice -restart crond |
如果crontab失败直接用群晖的计划任务建立,也挺方便。
搞定!感谢原作者。
以后有时间写写config.yml配置文件,官方有详细的说明: