树莓派安装Aria2实现离线下载
作为服务器使用的树莓派,离线下载应该是最常用的功能之一。之前费尽周折给树莓派挂载移动硬盘就是为了这一天。由于之前在VPS上安装过Aria2,参考VPS搭建Aria2下载环境,体验还是很不错的,主要还是国外的网速快,索性给树莓派也安装一个Aria2试试。
安装Aria2
首先,使用命令行安装aria2
1 | sudo apt-get install aria2 |
创建配置文件
接下来创建aria2的配置文件夹以及配置文件
1 | sudo mkdir /etc/aria2 |
编辑/etc/aria2/aria2.conf
配置文件
1 | ## 文件保存相关 ## |
然后设置aria2读取以上配置文件
1 | aria2c --conf-path=/etc/aria2/aria2.conf -D |
设置Aria2开机自启
接下来将aria2设置成服务并实现aria2开机自启
1 | sudo touch /etc/init.d/aria2c |
编辑/etc/init.d/aria2c
文件内容
1 | #!/bin/sh |
给/etc/init.d/aria2c
可执行权限
1 | sudo chmod +x /etc/init.d/aria2c |
设置aria2开机自启
1 | sudo update-rc.d aria2c defaults |
接下来就测试一下刚创建的aria2c服务吧
1 | sudo service aria2c start |
添加管理页面
到这一步,aria2还缺一个管理页面。由于我的树莓派安装了Nginx服务器,所以只需要在/var/www/html
目录下,添加一个web页面就能实现aria2页面管理了。管理页面我用的是webui-aria2
1 | cd /var/www/html |
最后来测试一下吧,输入网址http://yourRaspberryIPAddress/webui-aria2即可。
心得
由于我的移动硬盘格式既有FAT32分区又有NTFS分区,两种分区作为Aria2的下载目录我都测试了一遍。
首先是FAT32分区,Linux系统默认可以装载,但是问题是中文会出现乱码,如果用Aria2下载中文的文件或文件夹时,会报错
1 | cannot create directory or file |
解决这个问题的办法就是在装载FAT32分区的时候,设置中文选项
1 | sudo mount -o utf8=1 /dev/sda1 /mnt/mobileHDD/download |
如果是NTFS分区,可以使用ntfs-3g
来装载,默认就支持中文
1 | sudo ntfs-3g /dev/sda2 /mnt/mobileHDD/download |
还有一个注意点就是,由于移动硬盘装载后,默认属于root用户以及root用户组,所以下载文件的时候,要在下载设置中填写root
用户以及root用户密码
否则,你的文件始终无法下载。
如果要支持外网访问的话,路由器NAT映射需要将6800端口(默认端口)映射出去,当然也可以去/etc/aria2/aria2.conf
配置文件中修改该端口。
建议开启rpc-secret
密码令牌,这样可以防止他人知道了你的Aria2管理页面入口后,偷窥你的隐私或肆意破坏。一样是在/etc/aria2/aria2.conf
配置文件中修改。
支持https协议
虽然有一个密码令牌一层保护,但是只要是建立在http协议下的网站,都属于明文传输,是极不安全的。所以需要支持https协议。
在配置文件/etc/aria2/aria2.conf
最后添加1
2
3
4# 支持https协议
rpc-secure=true
rpc-certificate=/etc/letsencrypt/live/yourdomain/fullchain.pem
rpc-private-key=/etc/letsencrypt/live/yourdomain/privkey.pem
页面管理中的连接设置里地址保持不变,仍然是https://yoursite.com:6800/jsonrpc
。以https打开管理页面时,启用SSL/TLS加密默认会被勾上。
最后,任何对配置文件的修改,记得都要重启一下aria2服务。
总结
我家里的宽带是百兆网速,Aria2下载的时候,满载可以达到2MB/s,这可能取决于文件资源的连接数。我对这个成绩表示满意的。但是Aria2在下载的时候,速度时快时慢,可能是资源不稳定,有时候甚至没有速度。有机会我会尝试一下transmission,听说下载bt文件的时候,速度很快。