最新消息:

aria2+AriaNg 打造自己的离线下载/云播平台

感想 koic_zhzz 159浏览 0评论

跳至主内容跳至工具栏
关于WordPress
临时站点-zhzz.org
2有 2 个更新可用
22条评论待审
新建
查看文章
您好,eben
注销
显示选项帮助WordPress 6.4.3 现已可用!请立即更新。自动升级 WordPress 失败 —— 请再试一次。
编辑文章 写文章
添加标题
aria2+AriaNg 打造自己的离线下载/云播平台
固定链接: https://zhzz.59php.com/asp/15129
添加媒体可视化文本

在带宽、硬盘、电费都相对低廉的现在,或许很多人都觉得离线下载基本丧失了意义:我大可以电脑24h开机,用任何下载工具慢慢拖回本地。但是对于我而言,还是需要一个可靠的离线下载平台的,在各种程序和平台中,我最后选定了这样的一个组合:aria2+AriaNg+Directory Lister。

我为何需要离线下载

关于我为何需要离线下载,我大概可以概括出下面2点:

  1. 需要随时随地下载文件。我可能在工作中、路途上发现了某个资源,而我不希望错过它,同时也不希望还需要“回家-打开电脑-重新找到那个资源”这样浪费时间。
  2. 减少自身电脑、网络的负担。24h挂机下载,尤其是迅雷,对于我的电脑、网络都是比较大的负担,既降低了电脑的性能,同时也影响了我的其他的网络应用,比如在线视频等。

而有了离线下载之后,我得到了这些益处:

  1. 资源下载速度大大提高。由于宽带运营商QOS限制、迅雷百度网盘的恶意限速(即便我都开了会员),所以尽管我目前使用的是200M电信光纤,但下载美剧等资源时速度依旧差强人意,而使用独服/VPS则几乎满速。
  2. 自己的下载速度大大提高。我可以直接通过http直连下载文件,跑满带宽,而且由于不再是P2P形式,只需要IDM这类轻便的下载工具,甚至直接浏览器下载即可,对于电脑的负担极小。
  3. 可以在线播放预览。对于100-200M大小的美剧比如生活大爆炸等,我可以直接在网页上播放,免去了下载。

为何选择aria2而非Transmission

其实我用过一段时间的Transmission,搭配https://github.com/ronggang/transmission-web-control之后也有很好的体验,但是aria2更轻量级,同时各种WebUI也更为丰富。不过aria2不支持eMule下载是让我比较在意的。

aria2+AriaNg 打造自己的离线下载/云播平台-1


在ubuntu下部署aria2

这里我提供两种安装方法,一种是自己编译,一种则是直接通过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=<TOKEN>    #设置密码

至此,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 a

转载请注明:落伍老站长 » aria2+AriaNg 打造自己的离线下载/云播平台

发表我的评论
取消评论
表情

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址