Centos7编译安装最新版aria2 1.35.0 (2020.1.22更新)

aria2是很好用的多线程下载工具。lite却又很powerful。可以下载直链,磁力,BT,不能下载电驴。虽然其实版本新旧并不会对基本功能有任何影响。但是我还是比较喜欢用最新版。

然而最新版都是编译安装,没有所谓一键安装包。所以安装速度相比于快速安装就可能慢几十倍甚至几百倍(并没有用夸张修辞)

总之。网上并没有最新版的安装指令,而我又不想每次都用手敲。毕竟谁不想复制粘贴呢。。所以以下就是aria2的1.34.0版(目前最新版)的编译安装指令。

我用的是centos7,其他系统不怎么用,以后有了解了可以再发帖。另外内存不要太小,至少有个500mb吧,因为编译会占一些资源。我用的是独立服务器

Ok,开始


首先下载安装包,并解压缩,并打开目录。

wget https://github.com/aria2/aria2/releases/download/release-1.35.0/aria2-1.35.0.tar.gz
tar -zxvf aria2-1.35.0.tar.gz
cd aria2-1.35.0

然后安装GNU编译器套件

yum install gcc*

configure一下

./configure

然后make

make

最后make install

make install

然后就安完了。。好像也并没什么大不了。。难怪网上没人写。。不过我比较懒嘛。。还是愿意一劳永逸,复制粘贴。。另外服务器比较多,,能节约点时间就节约点时间。

接下来就是创建aria2配置文件

mkdir ~/.aria2
touch ~/.aria2/aria2.session
touch ~/.aria2/aria2.conf

创建完之后可以找办法打开这个文件。如果想直接在terminal打开就运行下面这行代码。当然我建议用一个可视化界面打开,例如各种panel,或者ftp客户端、sftp客户端等等,因为懒。。

vi ~/.aria2/aria2.conf

把配置文件复制进去。以下是我的配置文件(注意看中文注解,因为我的服务器配置都足够强,所以有些数据调的比较不一样。还有文件储存位置,记得改成你自己的)

## 文件保存相关 ##
# 文件的保存路径(可使用绝对路径或相对路径), 默认: 当前启动位置
dir=/www/wwwroot/disk
# 启用磁盘缓存, 0为禁用缓存, 需1.16以上版本, 默认:16M
#disk-cache=128M
# 文件预分配方式, 能有效降低磁盘碎片, 默认:prealloc
# 预分配所需时间: none < falloc ? trunc < prealloc
# falloc和trunc则需要文件系统和内核支持
# NTFS建议使用falloc, EXT3/4建议trunc, MAC 下需要注释此项
#file-allocation=none
# 断点续传
continue=true
 
## 下载连接相关 ##
# 最大同时下载任务数, 运行时可修改, 默认:5
max-concurrent-downloads=50
# 同一服务器连接数, 添加时可指定, 默认:1
max-connection-per-server=16
# 最小文件分片大小, 添加时可指定, 取值范围1M -1024M, 默认:20M
# 假定size=10M, 文件为20MiB 则使用两个来源下载; 文件为15MiB 则使用一个来源下载
min-split-size=10M
# 单个任务最大线程数, 添加时可指定, 默认:5
split=20
# 整体下载速度限制, 运行时可修改, 默认: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
## 进度保存相关 ##
# 从会话文件中读取下载任务
input-file=/root/.aria2/aria2.session
# 在Aria2退出时保存`错误/未完成`的下载任务到会话文件
save-session=/root/.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
# 事件轮询方式, 取值:[epoll, kqueue, port, poll, select], 不同系统默认值不同
#event-poll=select
# RPC监听端口, 端口被占用时可以修改, 默认:6800
rpc-listen-port=51868
# 设置的RPC授权令牌, v1.18.4新增功能, 取代 --rpc-user 和 --rpc-passwd 选项
#rpc-secret=11a22b33c
# 设置的RPC访问用户名, 此选项新版已废弃, 建议改用 --rpc-secret 选项
#rpc-user=<user>
# 设置的RPC访问密码, 此选项新版已废弃, 建议改用 --rpc-secret 选项
#rpc-passwd=<passwd>
 
## BT/PT下载相关 ##
# 当下载的是一个种子(以.torrent结尾)时, 自动开始BT任务, 默认:true
follow-torrent=true
# BT监听端口, 当端口被屏蔽时使用, 默认:6881-6999
listen-port=36000-36999
# 单个种子最大连接数, 默认:55
bt-max-peers=0
# 打开DHT功能, PT需要禁用, 默认:true
enable-dht=true
# DHT网络监听端口, 默认:6881-6999
dht-listen-port=38000-38999
# 本地节点查找, PT需要禁用, 默认:false
#bt-enable-lpd=false
# 种子交换, PT需要禁用, 默认:true
enable-peer-exchange=true
# 每个种子限速, 对少种的PT很有用, 默认:50K
#bt-request-peer-speed-limit=50K
# 客户端伪装, PT需要
peer-id-prefix=-TR2940-
user-agent=Transmission/2.94
# 当种子的分享率达到这个数时, 自动停止做种, 0为一直做种, 默认:1.0
seed-ratio=1.0
# 强制保存会话, 即使任务已经完成, 默认:false
# 较新的版本开启后会在任务完成后依然保留.aria2文件
#force-save=false
# BT校验相关, 默认:true
#bt-hash-check-seed=true
# 继续之前的BT任务时, 无需再次校验, 默认:false
bt-seed-unverified=true
# 保存磁力链接元数据为种子文件(.torrent文件), 默认:false
#bt-save-metadata=true

# bt-tracker数据来自https://github.com/ngosang/trackerslist/blob/master/trackers_all_udp.txt
bt-tracker=udp://tracker.coppersurfer.tk:6969/announce,udp://tracker.open-internet.nl:6969/announce,udp://tracker.leechers-paradise.org:6969/announce,udp://exodus.desync.com:6969/announce,udp://tracker.internetwarriors.net:1337/announce,http://tracker.internetwarriors.net:1337/announce,udp://tracker.opentrackr.org:1337/announce,udp://9.rarbg.to:2710/announce,udp://9.rarbg.me:2710/announce,http://tracker.opentrackr.org:1337/announce,http://tracker3.itzmx.com:6961/announce,http://tracker1.itzmx.com:8080/announce,udp://open.demonii.si:1337/announce,udp://tracker.torrent.eu.org:451/announce,udp://tracker.tiny-vps.com:6969/announce,udp://tracker.cyberia.is:6969/announce,udp://thetracker.org:80/announce,udp://denis.stalker.upeer.me:6969/announce,udp://bt.xxx-tracker.com:2710/announce,udp://open.stealth.si:80/announce,udp://ipv4.tracker.harry.lu:80/announce,udp://explodie.org:6969/announce,http://open.acgnxtracker.com:80/announce,http://explodie.org:6969/announce,udp://tracker.iamhansen.xyz:2000/announce,udp://retracker.lanta-net.ru:2710/announce,udp://tracker.supertracker.net:1337/announce,udp://tracker.filepit.to:6969/announce,udp://tracker.filemail.com:6969/announce,udp://torrentclub.tech:6969/announce,udp://retracker.netbynet.ru:2710/announce,udp://retracker.baikal-telecom.net:2710/announce,http://tracker4.itzmx.com:2710/announce,udp://tracker2.itzmx.com:6961/announce,udp://tracker.trackton.ga:7070/announce,udp://tracker.dyn.im:6969/announce,http://tracker2.itzmx.com:6961/announce,udp://tracker.novg.net:6969/announce,http://tracker.novg.net:6969/announce,http://gwp2-v19.rinet.ru:80/announce,udp://tracker.uw0.xyz:6969/announce,udp://tracker.tvunderground.org.ru:3218/announce,udp://carapax.net:6969/announce,https://tracker.fastdownload.xyz:443/announce,https://t.quic.ws:443/announce,http://open.trackerlist.xyz:80/announce,http://carapax.net:6969/announce,udp://zephir.monocul.us:6969/announce,http://vps02.net.orel.ru:80/announce,http://tracker.tvunderground.org.ru:3218/announce,http://open.acgtracker.com:1096/announce,http://mail2.zelenaya.net:80/announce,udp://home.penza.com.ru:6969/announce,https://tracker.gbitt.info:443/announce,http://tracker.gbitt.info:80/announce,wss://tracker.openwebtorrent.com:443/announce,udp://tracker4.itzmx.com:2710/announce,udp://tracker.swateam.org.uk:2710/announce,http://tracker.bz:80/announce,http://torrent.nwps.ws:80/announce,http://t.nyaatracker.com:80/announce,http://retracker.sevstar.net:2710/announce,udp://tracker.nyaa.uk:6969/announce,udp://tracker.moeking.me:6969/announce,udp://tracker.justseed.it:1337/announce,udp://tracker-2.msm8916.com:6969/announce,udp://packages.crunchbangplusplus.org:6969/announce,udp://chihaya.toss.li:9696/announce,udp://amigacity.xyz:6969/announce,https://tracker.vectahosting.eu:2053/announce,https://1337.abcvg.info:443/announce,http://tracker.torrentyorg.pl:80/announce,http://t.acg.rip:6699/announce,http://share.camoe.cn:8080/announce,http://retracker.mgts.by:80/announce,http://amigacity.xyz:6969/announce,http://agusiq-torrents.pl:6969/announce
#end

弄好了之后保存,然后运行下面这个代码。。如果没有报错,则说明安装成功。可以点control+C把它关掉

aria2c –conf-path=/root/.aria2/aria2.conf

最后可以让aria2随系统启动。先touch一下

touch /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
case "$1" in
start)
  echo -n "Starting aria2c"
  /usr/local/bin/aria2c --conf-path=/root/.aria2/aria2.conf -D
  ;;
stop)
  echo -n "Shutting down aria2c "
  killall aria2c ;;
restart)
  killall aria2c
  /usr/local/bin/aria2c --conf-path=/root/.aria2/aria2.conf -D
  ;;
esac
exit

当然你要是会用vi也可以直接用vi,不touch。
最后赋予这个文件权限

chmod 755 /etc/init.d/aria2c

以后就可以直接 通过service来启动和关闭了
启动:service aria2c start
关闭:service aria2c stop

最后的最后,打开系统目录/etc/rc.localservice aria2c start 复制进去,系统就会在开机的时候运行一下这个指令,也就是开机自动启动aria2。欧耶!

就酱。拜拜大家!

One comment

Leave a Reply

您的电子邮箱地址不会被公开。 必填项已用*标注