树莓派下载机配置

image

使用树莓派当作下载服务器,白天找资源让树莓派下载,晚上到家看电影,美滋滋~
啊,今天又是咸鱼的一天,滋溜,哈~

前提准备

  1. 树莓派
  2. 公网服务器
  3. 激动的心
  4. 颤抖的手

let’s go!

安装frp

frp文档地址
frp下载地址
下载好公网服务器和树莓派对应的系统版本,分别发送至对应的系统内。

如何查看系统的内核

uname -a
Darwin bogon 19.0.0 Darwin Kernel Version 19.0.0: Wed Sep 25 20:18:50 PDT 2019; root:xnu-6153.11.26~2/RELEASE_X86_64 x86_64
Linux Tencent-Wang 4.9.0-11-amd64 #1 SMP Debian 4.9.189-3+deb9u1 (2019-09-20) x86_64 GNU/Linux
这里 Darwinamd64 就是系统的内核版本

服务器端

解压完成后,修改 frps.ini
修改配置如下:

1
2
3
4
[common]
bind_addr = 0.0.0.0
bind_port = 12345
vhost_http_port = 67890

bind_port就是给client端用的链接端口
vhost_http_port就是代理client端的web服务端口

树莓派端

解压完成后修改 frpc.ini
修改配置如下:

1
2
3
4
5
6
7
8
9
[common]
server_addr = xxx.xx.xx.xxx
server_port = 12345

[ssh]
type = tcp
local_ip = 127.0.0.1
local_port = 22
remote_port = 6666

server_addr就是服务器的ip地址
server_port就是服务器的bind_port端口号
ssh配置项就是远程通过公网ip访问树莓派的配置

如果通过以上配置,那么访问本地树莓派ssh的方法就是
ssh -oPort=6666 root@xxx.xx.xx.xxx
这样就能通过公网ip来访问本地的树莓派了。

添加自启动

服务器端

1
2
3
4
vim /etc/rc.local
# 在 exit 之前 或者末尾之前加入以下几行
/root/softwares/frp/frps -c /root/softwares/frp/frps.ini
# 例如 把 frp 文件的位置在 /root/softwares/frp/ 目录下

树莓派端

1
2
3
vim /etc/rc.local
# 在 exit 之前 或者末尾之前加入以下几行
/root/softwares/frp/frpc -c /root/softwares/frp/frpc.ini

其他

以上是最基本的frp配置,文档中有更详细的配置说明。
如给两端加上token增加链接的安全性。
代理client端多个web服务等等

aria2 下载

在树莓派端安装 aria2

安装

apt-get install -y aria2
创建文件夹
mkdir -p ~/.config/aria2/
添加aria配置文件
vim ~/.config/aria2/aria2.config
输入以下信息:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
#后台运行
daemon=true
#用户名
#rpc-user=user
#密码
#rpc-passwd=passwd
#设置加密的密钥
rpc-secret=secret
#允许rpc
enable-rpc=true
#允许所有来源, web界面跨域权限需要
rpc-allow-origin-all=true
#是否启用https加密,启用之后要设置公钥,私钥的文件路径
#rpc-secure=true
#启用加密设置公钥
#rpc-certificate=/home/pi/.config/aria2/example.crt
#启用加密设置私钥
#rpc-private-key=/home/pi/.config/aria2/example.key
#允许外部访问,false的话只监听本地端口
rpc-listen-all=true
#RPC端口, 仅当默认端口被占用时修改
#rpc-listen-port=6800
#最大同时下载数(任务数), 路由建议值: 3
max-concurrent-downloads=5
#断点续传
continue=true
#同服务器连接数
max-connection-per-server=5
#最小文件分片大小, 下载线程数上限取决于能分出多少片, 对于小文件重要
min-split-size=10M
#单文件最大线程数, 路由建议值: 5
split=10
#下载速度限制
max-overall-download-limit=0
#单文件速度限制
max-download-limit=0
#上传速度限制
max-overall-upload-limit=0
#单文件速度限制
max-upload-limit=0
#断开速度过慢的连接
#lowest-speed-limit=0
#验证用,需要1.16.1之后的release版本
#referer=*
#文件保存路径, 默认为当前启动位置(我的是外置设备,请自行坐相应修改)
dir=/media/piusb/TDDOWNLOAD
#文件缓存, 使用内置的文件缓存, 如果你不相信Linux内核文件缓存和磁盘内置缓存时使用, 需要1.16及以上版本
#disk-cache=0
#另一种Linux文件缓存方式, 使用前确保您使用的内核支持此选项, 需要1.15及以上版本(?)
#enable-mmap=true
#文件预分配, 能有效降低文件碎片, 提高磁盘性能. 缺点是预分配时间较长
#所需时间 none < falloc ? trunc << prealloc, falloc和trunc需要文件系统和内核支持
file-allocation=prealloc
#不进行证书校验
check-certificate=false
#保存下载会话
save-session=/home/pi/.config/aria2/aria2.session
input-file=/home/pi/.config/aria2/aria2.session
#断电续传
save-session-interval=60

创建 session 文件
touch ~/.config/aria2/aria2.session

设置 aria2 开机自动启动服务

编辑并创建以下内容
vim /lib/systemd/system/aria.service
输入:

1
2
3
4
5
6
7
8
9
10
11
[Unit]
Description=Aria2 Service
After=network.target

[Service]
User=pi
Type=forking
ExecStart=/usr/bin/aria2c --conf-path=/root/.config/aria2/aria2.config

[Install]
WantedBy=multi-user.target

ps: 注意 ExecStart 的配置文件位置是否是您的配置位置

重新载入服务,并设置开机自动启动

1
2
systemctl daemon-reload
systemctl enable aria

查看 aria 服务状态
systemctl status aria
启动,停止,重启 aria服务
systemctl start|stop|restart aria

aria2 的 web 管理界面

输入以下命令:

1
2
3
4
5
6
7
8
9
apt-get install -y git nginx

# 下载 aria-ng
wget https://github.com/mayswind/AriaNg/releases/download/0.4.0/aria-ng-0.4.0.zip -O aira-ng.zip
# 解压
unzip aira-ng.zip -d aira-ng
# 将aira-ng放到nginx的/var/www/html目录下 然后设置开机自动启动nginx
mv aira-ng /var/www/html/
systemctl enable nginx

用浏览器访问树莓派IP下的aira-ng,即:http://192.168.1.115/aira-ng
然后在系统设置点击AriaNg设置 –> 全局 –> 设置语言为中文 –> 点击RPC–>修改为 rpc 密钥:secret

fpr 与 aria2 配合远程访问下载

修改树莓派端的 frpc.ini 的配置
vim /root/softwares/frp/frpc.ini
增加以下配置

1
2
3
4
5
6
7
8
9
10
11
[web01]
type = http
local_port = 80
local_ip = 127.0.0.1
custom_domains = xxx1.xxxx.com

[web02]
type = http
local_port = 6800
local_ip = 127.0.0.1
custom_domains = xxx2.xxxx.com

image

浏览器地址栏访问:xxx1.xxxx.com/aria-ng
点击进入图中的配置项:
Aira2 RPC 地址 处 填入 [web02]custom_domains的值
保存成功后就可以添加任务啦~

咸鱼也要有梦想,万一实现了呢
0%