2017-12-14 更新:由于 钱 种种原因,迅雷关闭了xware的验证码通道,此方法已失效,RIP xware.
说是树莓派,其实是cubieboard XD
先提供xware的下载地址:xware1.zip(百度云)
cubie.cc 的 xware 下载
xware 的停止维护通知
参考链接
参考链接2
官方文档——设备常见问题
正文开始
简要的使用步骤是这样的:
1、下载迅雷Xware软件
2、解压后运行其中的portal文件(注意权限)
3、在软件的输出中获取激活码,在迅雷远程下载页面添加下载器,输入激活码绑定
4、绑定成功后,mount个对Xware软件有写入权限的设备,开始在迅雷远程下载页面添加下载任务下载。
以下是啰嗦的内容:
迅雷一直没有出Linux版,所以之前想用的话得用虚拟机或是WINE的方法,但是最近1年随着迅雷路由和其它智能路由、播放器、NAS的推出,迅雷出了个远程下载。好在这些产品都是运行在Linux系统上,所以远程下载的软件也可用在其它Linux上使用,比如Ubuntu。
迅雷把这个远程下载软件叫做Xware,推出了不同CPU平台的版本,目前每周发布一次,比如6月25号发布的这个:
http://luyou.xunlei.com/thread-5759-1-1.html,【2014年6月25日】迅雷固件 第22周发布公告。
如果是在笔记本上使用Linux,比如Ubuntu,CPU都是x86,使用的C标准库大都是glibc,所以需要下载x86_32_glibc这个版本,比如上面网页中6月25号发布的:Xware1.0.22_x86_32_glibc.zip 。从命名上看出这个软件是32位的,不过在amd64的Linux上也可用使用,目前迅雷还没推出64位版本。
这个zip包解压后有4个文件:
EmbedThunderManager ETMDaemon portal vod_httpserver
EmbedThunderManager、ETMDaemon、vod_httpserver这3个是(估计)实际的下载软件。
portal是入口软件,运行后自动调用其它三个文件,启动Xware下载软件。
在终端命令行下运行portal后,会有输出,首次运行时,输出中会包含激活码(如果提示连接失败,请重新运行portal),比如:
THE ACTIVE CODE IS: EZTRST
得到激活码后,登录迅雷远程下载页面(http://yuancheng.xunlei.com/),添加下载器,路由、播放器或NAS随便选择一个,输入上面的激活码,就完成了绑定,绑定成功后,就可以在远程下载页面中添加下载任务(如果这时Xware没有发现可用的下载存储设备,任务还无法添加成功,见下面几段),添加成功后,Linux上运行的下载软件Xware就会自动下载该任务,任务的下载状态可以在远程下载页面中看。
首次运行Xware,会在软件目录,或者父目录中建立一个文件夹cfg,里面有些配置文件,也包含了绑定信息,感兴趣的可以自己看下。如果删除了这个文件夹里的内容,再次运行Xware又会重新输出新激活码,需重新绑定。
Xware软件会自动检测在Linux上已经mount的,且有写入权限的设备,如果有,在远程下载页面中添加下载任务时就可以看到。如果有多个可写入的设备,那就依次编号为C、D、E...等,可以在添加下载任务时选择其中一个。
Xware会在每个有写入权限的设备建立一个文件夹ThunderDB,里面包括一个uuid文件,其内容标记了该设备。貌似建立的下载任务信息也会保存在这个文件夹的下etm_task_store.db文件中,所以只有在mount了该设备的情况下,才能在远程下载页面中看到下载到这个设备的下载任务。
以上内容摘自原博
首先下载并解压缩xware1.zip
mkdir xware && cd xware
unzip ./xware1.zip
将解压出来的文件放到/opt中
cd .. && sudo mv xware /opt
处于权限最小化考虑,我们创建一个新用户:thunder
adduser thunder
系统会要求你输入密码并确认密码,然后后面的信息可以不管直接一路回车。
然后sudo mkdir /home/thunder/downloads
创建下载文件夹
由于sudo创建的文件夹所有者为root,我们需要修改所有者
sudo chown -R thunder:thunder /home/thunder/downloads
同理,/opt 下的xware程序也需要修改所有者
sudo chown -R thunder:thunder /opt/xware
之后就可以启动xware了
sudo su thunder -c /opt/xware/Xware1/portal
程序的输出差不多是这样
如图,蓝色马赛克的地方就是你的设备识别码。
多嘴一句,如果启用了防火墙的请将9000端口的入站开放,ufw的命令我贴在下方,iptable不太懂,请自行百谷。
sudo ufw allow 9000
再然后就可以上迅雷远程网页版绑定自己的账号了
http://yuancheng.xunlei.com
绑定完成之后可能会看到无外接设备的提示,按官方的说法,最好将设备格式化成 fat32(这样就不支持4GB以上的大文件了=.=)
想让那个mount设备可以被下载软件看到,可以给thunder开放这个设备的写入权限
使用mount --bind命令可以将一个文件夹绑定到另外一个文件夹
sudo mkdir /media/thunder
sudo mount /dev/sdaX /media/thunder
(此处sdaX)改为你实际的路径
sudo mount --bind /home/thunder/downloads /media/thunder
这样Xware就可以检测到/media/thunder这个设备,且有权限写入了
给予权限的方法见文末的更新。
再接下来可以将启用xware的命令放到rc.locale中,让xware开机自启
nano /etc/rc.locale
在exit 0
之前添加
mount --bind /home/thunder/downloads /media/thunder
/opt/xware/Xware1/portal
然后还有就是修改fstab实现外接设备的开机挂载
sudo nano /etc/fstab
在最后加入一行
/dev/sdaX /media/thunder vfat defaults
#此处sdaX改为你实际的设备路径
嗯大概就这么多,如果有什么说的不到位的地方欢迎留言,我会进行改进的。
2017-06-22 更新:
mount --bind 路径1 路径2
命令并不能使挂载的设备变成所有用户可读写,它的作用是把路径1模拟成路径2,所以实际上用这个命令是不正确的,它会导致我们下载下来的东西都被下载到了“系统盘”——即SD卡里。
正确的挂载方式是在/etc/fstab里添加如下一行
/dev/sda1 /media/thunder vfat user,rw,umask=111,dmask=000,nofail,timeout=1 0 0
其中umask=000是权限掩码,可以使设备挂载为777权限,nofail可以使系统在未插入外接磁盘时依然可以照常启动。
更多有关fstab的知识请参阅Arch Wiki
2017-06-22 更新2:
为了支持samba,将fstab内容改为
/dev/sda1 /media/thunder vfat user, rw,umask=111,dmask=000,nofail,timeout=1,iocharset=cp936 0 0
关于如何搭建samba服务器,将在下一篇博文说明。