在带宽、硬盘、电费都相对低廉的现在,或许很多人都觉得离线下载基本丧失了意义:我大可以电脑24h开机,用任何下载工具慢慢拖回本地。但是对于我而言,还是需要一个可靠的离线下载平台的,在各种程序和平台中,我最后选定了这样的一个组合:aria2+AriaNg+Directory Lister。
关于我为何需要离线下载,我大概可以概括出下面2点:
而有了离线下载之后,我得到了这些益处:
其实我用过一段时间的Transmission,搭配https://github.com/ronggang/transmission-web-control之后也有很好的体验,但是aria2更轻量级,同时各种WebUI也更为丰富。不过aria2不支持eMule下载是让我比较在意的。
这里我提供两种安装方法,一种是自己编译,一种则是直接通过apt-get:
第一种,自己编译:
下载tar.bz2包:https://sourceforge.net/projects/aria2/files/stable/aria2-1.19.0/aria2-1.19.0.tar.bz2/download
tar xf aria2-1.19.0.tar.bz2
cd /aria2-1.19.0
./configure
make
make install
至此编译安装完成,aria2c -v即可查看版本。
第二种是apt-get,需要注意的是,如果你直接apt-get,那么安装的就是1.18系列的版本,此版本是不支持rpc-secret特性的,所以我们需要修改包管理器源:
mv /etc/apt/sources.list /etc/apt/sources.list.bak && wget --no-check-certificate -P /etc/apt "https://softs.pw/Bash/sources/us.sources_stretch.list" && mv /etc/apt/us.sources_stretch.list /etc/apt/sources.list
安装Aria2 等软件:
apt-get update && apt-get install aria2 curl unzip vim -y
还原备份的 包管理器源,注意下次再安装软件的时候,请先运行 apt-get update ,否则包列表还是前面测试版源!
rm -rf /etc/apt/sources.list && mv /etc/apt/sources.list.bak /etc/apt/sources.list
至此安装完成,aria2c -v即可查看版本。
然后自己找一个或者创建一个目录(我是放在下载目录里,/data/wwwroot/download):
mkdir /data/wwwroot/download #新建文件夹
touch /data/wwwroot/download/aria2.session #新建session(下载任务记录)文件
chmod 777 /data/wwwroot/download/aria2.session #设置aria2.session可写
vi /data/wwwroot/download/aria2.conf #创建配置文件
关于aria2.conf,我推荐使用http://aria2c.com/usage.html的预设,再根据自己需要修改。我修改了下面这些:
dir=/data/wwwroot/download #下载目录
max-concurrent-downloads=3 #最多同时下载3个任务
input-file=/data/wwwroot/download/aria2.session #从会话文件中读取下载任务
save-session=/etc/aria2/aria2.session #在Aria2退出时保存`错误/未完成`的下载任务到会话文件
save-session-interval=60 #定时保存会话, 0为退出时才保存, 需1.16.1以上版本, 默认:0
enable-rpc=true #启用RPC,这样就能通过WebUI进行下载管理
rpc-allow-origin-all=true #允许所有来源
rpc-listen-all=true #允许非外部访问, 默认:false
rpc-secret= #设置密码
至此,aria2安装完成,尝试启动:
aria2c --conf-path=/data/wwwroot/download/aria2.conf
如果没有提示错误,按ctrl+c停止运行命令,转为后台运行:
aria2c --conf-path=/data/wwwroot/download/aria2.conf -D
添加开机启动:
vi /etc/init.d/aria2c #把Aria2做成服务
粘贴以下代码:
#!/bin/sh
### BEGIN INIT INFO
# Provides: aria2
# Required-Start: $remote_fs $network
# Required-Stop: $remote_fs $network
# Default-Start: 2 3 4 5
# Default-Stop: 0 1 6
# Short-Description: Aria2 Downloader
### END INIT INFO
case "$1" in
start)
echo -n "已开启Aria2c"
sudo -u root aria2c --conf-path=/data/wwwroot/download/aria2.conf -D
#sudo -u后面的是你正在使用的用户名
;;
stop)
echo -n "已关闭Aria2c"
killall aria2c
;;
restart)
killall aria2c
sudo -u root aria2c --conf-path=/data/wwwroot/download/aria2.conf -D
#同上面的一样,根据自己的用户改-u后面的用户名
;;
esac
exit
保存文件把权限给为755:
chmod 755 /etc/init.d/aria2c
测试Aria2服务是否可以正常启动:
service aria2c start
如果只显示“开启Aria2c”,没有其他错误提示的话就说明成功了。添加Aria2c服务到开机启动:
update-rc.d aria2c defaults
Aria2c服务命令使用说明:
service aria2c start //启动Aria2c
service aria2c restart //重启Aria2c
service aria2c stop /关闭Aria2c
AriaNg:https://github.com/mayswind/AriaNg
AriaNg 使用纯 html & javascript 开发, 所以既不需要编译也不依赖于任何运行环境,
您只需要打开您的游览器就可以使用. 通过借助响应式布局设计, 您可以在任何计算机或移动设备上使用.
因此只需下载最新Release:https://github.com/mayswind/AriaNg/releases,上传到网站目录下即可。
AriaNg 0.1.0 beta4分流下载:https://dl.yorkchou.com/php/aria-ng-0.1.0-b4.zip
接着打开部署好的AriaNg,在“AriaNg设置”中,输入自己的服务器/VPS地址和端口(默认6800),以及刚刚在aria2.conf中设置的密码。
首先可以参考老左的这篇内容:http://www.laozuo.org/6300.html
在Directory Lister、Encode Explorer、h5ai中,我最后选择了Directory Lister,因为它界面更清爽,配置更简单。
不过官方原版中,因为使用了google的一些css/js,导致大陆访问时会一直处于加载中,因此我这里推荐一个修改版,使用的是360的网站卫士常用前端公共库CDN服务,修改来自于http://list.downsoft.cn/。
下载:http://list.downsoft.cn/PHP%E4%BB%A3%E7%A0%81/DirectoryLister.v2.6.1.tar.gz
分流下载:https://dl.yorkchou.com/php/DirectoryLister.v2.6.1.tar.gz
将所有文件原样上传至下载目录(/data/wwwroot/download),然后访问,就能显示出你所有用aria2下载的文件。
而对于目前的不论是电脑端还是手机端的浏览器,都支持MP4等格式的直接播放,因此你只需要直接点击打开即可开始在线播放了。
之所以提一下Encode Explorer,是因为它支持设置密码访问,这样一来能保护你的下载隐私,或许比起Directory Lister,它更符合你的要求。不过实际上,如果你的环境是nginx的话,也可以轻松的设置用户名和密码来限制访问,这里就不赘述了,搜索“nginx 密码”就有很多教程。
原文:https://yorkchou.com/aria2.html