qizlee 发表于 2017-5-30 22:05:33

【原创】DSM3617xs_15101安装Transmission和Flexget

本帖最后由 qizlee 于 2017-5-30 22:13 编辑

引言:
之前一直混迹于各大PT网站,经历这五六年的浮浮沉沉,来来往往,有多少回忆相比都深切体会,我就不在这里赘述了。
最近刚刚把Buffalo Linkstation LS-QVL换代到Synology,当然也是自己DIY啦,很多资源都来源于隔壁,所以也想找机会回报坛子里的各位前辈们,你们辛苦了。
LS-QVL中我也是一只用Transmission和Flexget订阅几个PT网站的资源,加入下载筐或者收藏之后,家里的NAS就自动完成下载任务,回家可以慢慢欣赏。换了Synology后当然还是继续沿用先前的套路。首先就看到了这篇文章
小白PT之路:群晖6.1上安装transmission+flexget自动推送RSS 传送门 http://www.gebi1.com/thread-262099-1-1.html
但是帖子里写的文章应该或许在其他型号上(比如916+)等上面可以按照,但是在6.1.1的3617里已经无法安装了。首先是没有transmission,其次安装Flexget时也提示python找不到。所以才有了写下这篇帖子已方便大家。

所有操作指令都亲自测试过,在3617xs_15101中完美运行,其他的应该也没有问题。但是如果套件中心里有transmission和Flexget可以直接安装的,那就更好,不用敲指令了。

下面以Step by Step方式一步步介绍如何实现此功能。

正文:
首先保证你目前的DiskStation可以正常运行。我当前使用版本是DS3617xs 6.1 15101
http://pic.yupoo.com/qizlee/Gu3aBJeR/hMn8k.png

启用SSH
(如果可以,请自行修改登录端口)
http://pic.yupoo.com/qizlee/Gu3cRvyW/medish.jpg


在套件中心先安装Python3
(当前版本是3.5.1,这个版本很好,因为最新版的Flexget并不支持Python3.6.1,如果使用其他方式安装python3,可能会安装上最新的,反而导致Flexget不能正常使用)。具体操作略过。
在套件中心中可以设置安装的路径,这里默认安装到/volume1。这个路径下文中会用到,如果安装到其他目录,请自行修改后面的指令。

使用putty登录你的DiskStation,修改root密码。方法来自坛子里其他网友,这里表示感谢了。
群晖dsm6.0以后的系统官方修改了root密码,再也不是之前的admin密码了,这是为了方便putty进行修改。进入PUTTY,输入admin账户的账号和密码后按Enter键。确定出现绿色字体的admin@xxx(XXX应该显示你设置的主机用户名) 然后输入sudo su -(注意u和-之间有一个空格!!!) 再次输入admin密码就会出现绿色字体root@xxx。输入synouser --setpwroot xxx (xxx是你打算要修改的root的密码 建议修改成和admin账户一样,注意--前有一个空格),按一下Enter键出现绿色字体的root@xxx,这样就成功的将ROOT设置好密码了。当然为了避免遗忘,还是建议你设置成admin账户的密码吧。


前面都是准备,下面开始正式工作
下载并安装Transmission2.92
3617xs 6.1版本里没有Transmission,需要手动下载安装,参考这个帖子8楼,谢谢namama
http://www.gebi1.com/forum.php?mod=viewthread&tid=262164&highlight=transmission




在套件中心选择手动安装。安装之后会自动运行。
putty使用root账号登陆DiskStation,执行命令
ps -aux
你将会看到(如果看不清请放大)
http://pic.yupoo.com/qizlee/Gu3ox9Rc/odEWW.png


其中有Transmission启动的进程号,关闭之(进程号请改为自己系统的)
Kill 31928
http://pic.yupoo.com/qizlee/Gu3qnJW9/PjBhf.png

然后Winscp连接到Diskstation,选择配置文件 /usr/local/transmission/var/settings.json(该目录实际链接到/volume1/@appstore/transmission/var)
修改配置文件,具体请百度。

坛子里有人碰到说Transmission下载后有时会显示权限不足的错误,其实这个问题比较容易解决,完全不用开放一个everyone的权限。具体方法如下

在DiskStation的设置-“用户群组”中,找到 sc-download群组,设置其权限可读写你设置的下载目录即可,很简单吧。
至此,Transmission已经完全安装完毕,DiskStation启动后也可以自动启动,可以使用Transmission remote GUI进行管理,也可以打开网页 http://你DiskStation的IP地址:9091进行管理了

安装Flexget
这是个很大的坑,在Flexget官网讲的安装方式太复杂,而且用官网安装的python3无法正常使用,我也不想再装一个opkg,搞的系统太过臃肿,这里直接使用前文所安装的python3进行安装。

进入python3路径安装pip(下文中的volume1请自行修改为你安装套件包的路径)
# cd /volume1/@appstore/py3k/usr/local/bin

安装PIP./python3 -m ensurepip
出现下面信息显示安装成功
http://pic.yupoo.com/qizlee/Gu3uu0yC/medish.jpg
本打算查询下Flexget的版本,结果发现pip版本太低,直接也一并更新了
执行一遍 ./python3 -m pip search flexget
出现下面信息
http://pic.yupoo.com/qizlee/Gu3wM1y3/hchYF.png

更新成功。./python3 -m pip install --upgrade pip
http://pic.yupoo.com/qizlee/Gu3wMGda/5dKcj.png
顺便创建一个easy_install的链接,万一以后使用easy_install安装软件也方便了ln -sf easy_install-3.5 easy_install

基于python的特性,我们使用创建virtualenv的方式安装flexget。
安装virtualenv
./python3 -m pip install -i https://pypi.tuna.tsinghua.edu.cn/simple virtualenv

http://pic.yupoo.com/qizlee/Gu3wMUln/VRZHY.png

安装成功后创建一个virtualenv环境
./virtualenv ./flexget/

http://pic.yupoo.com/qizlee/Gu3wO3Ym/9SCkP.png
切换到Virtualenv目录cd flexget
启动virtualenv 环境source bin/activate

启动后在命令行左侧有标示 flexgethttp://pic.yupoo.com/qizlee/Gu3wOa6s/lFtgd.png
下面就可以正式开始安装Flexget了(必须指定安装源位置,不然就等着卡死吧)
bin/pip install -i https://pypi.tuna.tsinghua.edu.cn/simple flexget
http://pic.yupoo.com/qizlee/Gu3wOv0h/12hsJa.png
中间省略若干行,基于你的网速情况,可能会持续一会儿
http://pic.yupoo.com/qizlee/Gu3wODgm/xwvnP.png


Flexget会使用到使用到TransmissionRPC,也要安装bin/pip install flexget -i https://pypi.tuna.tsinghua.edu.cn/simple transmissionrpc
http://pic.yupoo.com/qizlee/Gu3wOXtz/eHaQo.png

http://pic.yupoo.com/qizlee/Gu3wP4lv/Excob.png

安装完毕后退出virtualenvdeactivate

至此Flexget安装完毕,你可以直接启动
./bin/flexget execute

或者输入完整路径执行/volume1/@appstore/py3k/usr/local/bin/flexget/bin/flexget execute
如果没有配置文件,上述两个命令会报错,请自行创建,配置文件保存在

/root/.config/flexget/config.yml

这里给出一个最简单的HDChina加入下载筐的task代码
XXXXXXX为你自己的passkey。
tasks:
HDChina:
rss: https://hdchina.club/torrentrss.php?rows=50&linktype=dl&passkey=XXXXXXX&rsscart=1
accept_all: yes
download: 种子的存储路径
transmission:
    host: localhost
    port: 9091
    username: admin
    password: 你自己的admin密码
    path: 指定不同PT网站的资源下载到不同路径

设置flexget的自动执行

方法一 vi /etc/crontab在最后一行增加下面语句(当然有很多其他方式让Flexget自动运行,但我还是推荐这种方式,每隔一个小时或更长时间查询下服务器上新加入自选下载的项目,减少下论坛的负荷是每个PTer应尽的责任)我定义的每个小时的第11分去查询,分钟数请自行修改11   *      *      *      *      root/volume1/@appstore/py3k/usr/local/bin/flexget/bin/flexget execute
方法二 使用WinSCP打开/etc/crontab修改。
修改之后通过下面命令重启下服务synoservice -restart crond





偶然必然 发表于 2017-5-30 22:14:44

来学习来学习来学习来学习

ben0629 发表于 2017-5-30 22:16:49

感谢你的分享

zhuminghu 发表于 2017-5-30 22:22:39

看不懂啊 天书 膜拜中

he_qr 发表于 2017-5-30 23:15:14

这个很赞啊

junbao321 发表于 2017-5-31 13:02:43

感谢你的分享

wyduke 发表于 2017-5-31 14:34:52

学习了,谢谢你的分享

bf963 发表于 2017-5-31 21:51:01

楼主你早两个小时发嘛 我也不用重新格式化 安3615了

airchn 发表于 2017-6-1 09:27:36

好复杂啊,哎,就不能弄个app直接装么

qizlee 发表于 2017-6-1 17:40:55

bf963 发表于 2017-5-31 21:51
楼主你早两个小时发嘛 我也不用重新格式化 安3615了

我也想装916+的,可是找不到合适的算号工具

rndy_1 发表于 2017-6-12 13:55:59

请问你的HDchina能正常下载么?我的HDchina报错“SSL: CERTIFICATE_VERIFY_FAILED”,其它PT网站都能正常下载。

qizlee 发表于 2017-6-12 19:56:45

rndy_1 发表于 2017-6-12 13:55
请问你的HDchina能正常下载么?我的HDchina报错“SSL: CERTIFICATE_VERIFY_FAILED”,其它PT网站都能正常下 ...

可以正常下载hdchina和HDSky
你是按照上面列的步骤按照的吗?应该可以下载啊
如果不是,请确认Python版本是3以上,我记得之前用python2.7版本会出现https的错误。

rndy_1 发表于 2017-6-12 22:06:29

qizlee 发表于 2017-6-12 19:56
可以正常下载hdchina和HDSky
你是按照上面列的步骤按照的吗?应该可以下载啊
如果不是,请确认Python版本 ...

其它几个网站,包括HDhome, HDtime, TTG, Mteam, HDroad, CHD, HDsky等七个网站都正常,HDchina就出这个错误,8个任务使用相同的模板,每个任务只需要写rss和template两个定义。HDchina通过浏览器(https)下载种子正常,flexget不行,不知道什么原因。按照你写的教程安装的。

rndy_1 发表于 2017-6-12 22:50:13

解决!换成hdchina.club可以正常下载,新域名hdchina.org不行

qizlee 发表于 2017-6-15 20:53:48

rndy_1 发表于 2017-6-12 22:50
解决!换成hdchina.club可以正常下载,新域名hdchina.org不行

那就好,我一直用的都是club域名

星海国宝 发表于 2017-6-15 23:01:53


学习了,谢谢你的分享

老鹰奸小鸡 发表于 2017-7-26 20:07:16

求助Kill 31928 换成自己的显示not found怎么办{:8_235:}

真路人甲 发表于 2017-7-26 22:15:49

你好,谢谢写的非常详细,我的型号是xs+,小版本号已经是15132了,下载了TR2.92的spk,手动安装时提示上传中。。过了 10分钟也没反应,也不报错,能给指点下吗,谢谢

qizlee 发表于 2017-7-29 16:14:20

真路人甲 发表于 2017-7-26 22:15
你好,谢谢写的非常详细,我的型号是xs+,小版本号已经是15132了,下载了TR2.92的spk,手动安装时提示上传 ...

没有碰到过,不过建议你下载个其他版本的Transmission试试看,坛子里有。

wjq_xp 发表于 2017-8-8 15:18:44

好复杂,先收藏了
页: [1] 2
查看完整版本: 【原创】DSM3617xs_15101安装Transmission和Flexget