树莓派编译最新aria2
获得权限
sudo -i
安装依赖
apt-get install -y wget libcurl4-openssl-dev libevent-dev ca-certificates libssl-dev pkg-config build-essential intltool libxml2-dev libgcrypt-dev libssl-dev
编译下载aira2最新版源码
# github地址:https://github.com/aria2/aria2/releases/
wget https://github.com/aria2/aria2/releases/download/release-1.34.0/aria2-1.34.0.tar.gz
解压源码,编译安装
tar -zxvf aria2-1.34.0.tar.gz cd aria2-1.34.0 ./configure make
编译完成后进入 /root/aria2-1.34.0/src 目录,把aria2c文件复制到bin目录
cp /root/aria2-1.34.0/src/aria2c /usr/local/bin
创建aira2目录
sudo mkdir -p /etc/aria2
编写aira2配置文件
vim /etc/aria2/aria2.conf
内容为:
## 文件保存相关 ## #文件保存目录,此处为移动硬盘挂载地址 dir=/mnt/storage/download #启用磁盘缓存, 0为禁用缓存, 需1.16以上版本, 默认:16M disk-cache=32M #断点续传 continue=true #文件预分配方式, 能有效降低磁盘碎片, 默认:prealloc #预分配所需时间: none < falloc ? trunc < prealloc #falloc和trunc则需要文件系统和内核支持 #NTFS建议使用falloc, EXT3/4建议trunc, MAC 下需要注释此项 #file-allocation=falloc ## 下载连接相关 ## #最大同时下载任务数, 运行时可修改, 默认:5 #max-concurrent-downloads=5 #同一服务器连接数, 添加时可指定, 默认:1 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 split=10 ## 进度保存相关 ## #从会话文件中读取下载任务 input-file=/etc/aria2/aria2.session #在Aria2退出时保存错误的、未完成的下载任务到会话文件 save-session=/etc/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= ## 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 #bt-track bt-tracker=udp://tracker.skyts.net:6969/announce,udp://tracker.safe.moe:6969/announce,udp://tracker.piratepublic.com:1337/announce,udp://tracker.pirateparty.gr:6969/announce,udp://tracker.coppersurfer.tk:6969/announce,udp://tracker.leechers-paradise.org:6969/announce,udp://allesanddro.de:1337/announce,udp://9.rarbg.com:2710/announce,http://p4p.arenabg.com:1337/announce,udp://p4p.arenabg.com:1337/announce,udp://tracker.opentrackr.org:1337/announce,http://tracker.opentrackr.org:1337/announce,udp://public.popcorn-tracker.org:6969/announce,udp://tracker2.christianbro.pw:6969/announce,udp://tracker1.xku.tv:6969/announce,udp://tracker1.wasabii.com.tw:6969/announce,udp://tracker.zer0day.to:1337/announce,udp://tracker.mg64.net:6969/announce,udp://peerfect.org:6969/announce,udp://open.facedatabg.net:6969/announce
创建aria2.session
touch /etc/aria2/aria2.session
编辑启动文件
vim /etc/init.d/aria2c
内容:
#!/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 USER=root RETVAL=0 case "$1" in start) echo -n "Starting aria2c\n" aria2c --conf-path=/etc/aria2/aria2.conf -D #sudo -u后面的是你正在使用的用户名,因为我用的pi ;; stop) echo -n "Shutting down aria2c " killall aria2c ;; restart) echo -n "Shutting down aria2c " killall aria2c sleep 3 echo -n "Starting aria2c" aria2c --conf-path=/etc/aria2/aria2.conf -D #同上面的一样,根据自己的用户名改pi。 ;; *) echo 'Usage:' `basename $0` '[option]' echo 'Available option:' for option in start stop restart do echo ' -' $option done ;; esac exit$RETVAL
设置文件权限
chmod 755 /etc/init.d/aria2c
设置启动以及自动开机
service aria2c start update-rc.d aria2c defaults
安装aria2 webUI(AriaNg)
sudo apt install -y git nginx wget https://github.com/mayswind/AriaNg/releases/download/0.5.0/AriaNg-0.5.0.zip -O aira-ng.zip unzip aira-ng.zip -d aira-ng sudo mv aira-ng /var/www/html/ sudo systemctl enable nginx