隨著迅雷遠程下載不再支持第三方系統,aria2再次進入我的視線。
在樹莓派系統下是可以通過apt-get 安裝aria2的,但是版本太舊。需要自行編譯新版本。
本教程在raspbian的最新版下完成。
首先安裝依賴:
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
然后下載aria2最新版源碼,官網地址為: https://github.com/aria2/aria2/releases/
sudo wget https://github.com/aria2/aria2/releases/download/release-1.32.0/aria2-1.32.0.tar.gz
tar -zxvf aria2-1.32.0.tar.gz
cd aria2-1.32.0
sudo ./configure
sudo make
編譯完成后,進入/aria2-1.23.0/src目錄,有一個文件名為aria2c的文件,復制到bin目錄
sudo cp ~/aria2-1.23.0/src/aria2c /usr/bin
對aria2配置文件進行設置
在/etc里新建一個aria2的目錄
sudo mkdir -p /etc/aria2
寫入配置
sudo nano /etc/aria2/aria2.conf
內容為
## 文件保存相關 ##
# 文件保存目錄
dir=/home/pi/usb/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=15
# 整體下載速度限制, 運行時可修改, 默認: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=<TOKEN>
## 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
新建一個aria2.session,用于存儲正在下載的一些信息
sudo touch /etc/aria2/aria2.session
設置開機自啟動
sudo nano /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\n"
sudo -u pi 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"
sudo -u pi 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
sudo chmod 755 /etc/init.d/aria2c
sudo service aria2c start
sudo update-rc.d aria2c defaults
完畢,webui下載后放到網頁服務器的目錄。