利用树莓派+aria2+weibui-aria2搭建离线下载器

博客中阅读效果更佳哦:利用树莓派+aria2+weibui-aria2搭建离线下载器

环境准备

  1. 将Hexo部署到树莓派上
  2. 安装nodejs
sudo apt-get install nodejs

或编译安装(树莓派这性能 还是放弃吧)

wget https://nodejs.org/dist/v12.18.3/node-v12.18.3.tar.gz
tar -xzf node-v12.18.3.tar.gz
cd node-v12.18.3
./configure
make
sudo make install

安装下载工具Aria2

Aria2 是一个多平台轻量级,支持 HTTP、FTP、BitTorrent 等多协议、多来源的命令行下载工具。Aria2 可以从多个来源、多个协议下载资源,最大的程度上利用了你的带宽。Aria2 有着非常小的资源占用,在关闭磁盘缓存的情况下,物理内存占用通常为 4M(正常 HTTP/FTP 下载的情况下),BitTorrent 下载每秒2.8M/S的情况下,CPU 占有率约为 6%。Aria2 支持 JSON-RPC 和 XML-RPC 接口远程调用。(这一段绝对没有水字数,真的真的没有)

  1. 从github上下载源代码
    项目地址
    找到最新版本的链接
mkdir ~/Downloads
cd ~/Downloads
wget https://github.com/aria2/aria2/releases/download/release-1.35.0/aria2-1.35.0.tar.gz
  1. 利用tar解压缩
tar zxvf aria2-1.35.0.tar.gz

注:tar命令后的zxvf是四个参数,z代表Gzip格式,x代表解压,v代表显示操作过程,f代表该操作对应一个文件(PS:本段说明来源于《树莓派开始,玩转Linux》)
3. 编译Aria2程序

cd aria2-1.35.0
./configure
make
sudo make install

可以使用aria2c -v验证安装

Aria2的使用

详见Aria2官网

安装图形化下载工具

这里使用的是webui-aria2

cd ~/Downloads
git clone git@github.com:ziahamza/webui-aria2.git
cd webui-aria2

安装screen

使用telnet或SSH远程登录linux时,如果连接非正常中断,重新连接时,系统将开一个新的session,无法恢复原来的session.screen命令可以解决这个问题。Screen工具是一个终端多路转接器,在本质上,这意味着你能够使用一个单一的终端窗口运行多终端的应用。(以上内容摘自百度百科 我真的没有水字数)

sudo apt-get install screen

准备配置文件

mkdir ~/.config
mkdir ~/.config/aria2
/home/pi/.config/aria2/aria2.conf

配置文件内容如下,根据自己需求更改即可

## 文件保存相关 ##
 
# 文件保存目录
dir=/home/pi/Downloads
# 启用磁盘缓存, 0为禁用缓存, 需1.16以上版本, 默认:16M
disk-cache=32M
# 断点续传
continue=true
 
# 文件预分配方式, 能有效降低磁盘碎片, 默认:prealloc
# 预分配所需时间: none < falloc ? trunc < prealloc
# falloc和trunc则需要文件系统和内核支持
# NTFS建议使用falloc, EXT3/4建议trunc, MAC 下需要注释此项
file-allocation=trunc
 
## 下载连接相关 ##
 
# 最大同时下载任务数, 运行时可修改, 默认:5
#max-concurrent-downloads=100
# 同一服务器连接数, 添加时可指定, 默认:1
# 官方的aria2最高设置为16, 如果需要设置任意数值请重新编译aria2
max-connection-per-server=16
# 整体下载速度限制, 运行时可修改, 默认:0(不限制)
#max-overall-download-limit=0
# 单个任务下载速度限制, 默认:0(不限制)
#max-download-limit=0
# 整体上传速度限制, 运行时可修改, 默认:0(不限制)
#max-overall-upload-limit=0
# 单个任务上传速度限制, 默认:0(不限制)
#max-upload-limit=0
# 禁用IPv6, 默认:false
# disable-ipv6=true
 
# 最小文件分片大小, 添加时可指定, 取值范围1M -1024M, 默认:20M
# 假定size=10M, 文件为20MiB 则使用两个来源下载; 文件为15MiB 则使用一个来源下载
min-split-size=10M
# 单个任务最大线程数, 添加时可指定, 默认:5
# 建议同max-connection-per-server设置为相同值
split=16
 
## 进度保存相关 ##
 
# 从会话文件中读取下载任务
input-file=/home/pi/.config/aria2/aria2.session
# 在Aria2退出时保存错误的、未完成的下载任务到会话文件
save-session=/home/pi/.config/aria2/aria2.session
# 定时保存会话, 0为退出时才保存, 需1.16.1以上版本, 默认:0
save-session-interval=60
 
## RPC相关设置 ##
 
# 启用RPC, 默认:false
enable-rpc=true
# 允许所有来源, 默认:false
rpc-allow-origin-all=true
# 允许外部访问, 默认:false
rpc-listen-all=true
# RPC端口, 仅当默认端口被占用时修改
# rpc-listen-port=6800
# 设置的RPC授权令牌, v1.18.4新增功能, 取代 --rpc-user 和 --rpc-passwd 选项
rpc-secret=yourpassword
# 启动SSL
# rpc-secure=true
# 证书文件, 如果启用SSL则需要配置证书文件, 例如用https连接aria2
# rpc-certificate=
# rpc-private-key=
 
## BT/PT下载相关 ##
 
# 当下载的是一个种子(以.torrent结尾)时, 自动开始BT任务, 默认:true
follow-torrent=true
# 客户端伪装, PT需要
peer-id-prefix=-TR2770-
user-agent=Transmission/2.77
# 强制保存会话, 即使任务已经完成, 默认:false
# 较新的版本开启后会在任务完成后依然保留.aria2文件
#force-save=false
# 继续之前的BT任务时, 无需再次校验, 默认:false
bt-seed-unverified=true
# 保存磁力链接元数据为种子文件(.torrent文件), 默认:false
# bt-save-metadata=true
# 单个种子最大连接数, 默认:55 0表示不限制
bt-max-peers=0
# 最小做种时间, 单位:分
# seed-time = 60
# 分离做种任务
bt-detach-seed-only=true

接着新建aria2.session文件

sudo nano /home/pi/.config/aria2/aria2.session

直接保存退出即可

运行!

  1. 运行aria2c
screen -S aria2c
aria2c --enable-rpc --rpc-listen-all

然后Ctrl+A+D挂起
2. 运行webui-aria2

screen -S webui-aria2
cd ~/Downloads/webui-aria2
node node-server.js

Ctrl+A+D挂起
然后打开http://raspberrypi:8888/
或树莓派IP地址:8888

使用!

在如图位置输入在aria2.conf文件rpc-secret中的值

接着就可以直接使用了

更多内容详见我的个人博客

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值