Aria2 を Ubuntu にコンパイルしてインストールします – Baidu ネットワーク ディスクのダウンロード速度制限を突破します

ソースコードをダウンロードする

必要な依存関係をいくつかインストールします

apt install -y libcurl4-openssl-dev libevent-dev \
                ca-certificates libssl-dev pkg-config \
                build-essential intltool libgcrypt-dev \
                libssl-dev libxml2-dev

最新の aria2 ソース コードをダウンロードします。

wget --no-check-certificate https://github.com/aria2/aria2/releases/download/release-1.31.0/aria2-1.31.0.tar.gz
tar zxf aria2-1.31.0.tar.gz
cd ./aria2-1.31.0

ソースコードを変更する

Aria2 のパラメータは、ネットワーク ディスクのダウンロード速度を-max-server-connection主に決定します。ここでは最大値を 256、最小値を 256k に設定します。-min-split-files
-max-server-connection-min-split-files

    #aira2的基本配置选项大多都存储在文件OptionHandlerFactory.cc中
    vi src/OptionHandlerFactory.cc

    #定位到441行
    #将服务器最大连接数16修改为256
    OptionHandler* op(new NumberOptionHandler(PREF_MAX_CONNECTION_PER_SERVER,
                                              TEXT_MAX_CONNECTION_PER_SERVER,
                                           // "1", 1, 16, 'x'));
                                              "1", 1, 256, 'x'));
    #定位到第503行
    #将最文件分片大小设置为256_k
    #到此源代码需要修改的地方改完了
    OptionHandler* op(new UnitNumberOptionHandler(
    //PREF_MIN_SPLIT_SIZE, TEXT_MIN_SPLIT_SIZE, "1M", 1_m, 1_g, 'k'));
     PREF_MIN_SPLIT_SIZE, TEXT_MIN_SPLIT_SIZE, "1M", 256_k, 1_g, 'k'));

コンパイル前のパラメータ設定

./configure

コンパイル

make

コンパイル後

cp src/aria2c /usr/local/bin

インストールが成功したかどうかを確認する

aria2c -v

バージョン番号が表示されれば成功です。

構成

/etc に新しい aria2 ディレクトリを作成し、新しい設定ファイル aria2.conf を作成します。

mkdir -p /etc/aria2
vi /etc/aria2/aria2.conf

以下を挿入します。

dir=/home/wen/Downloads  # 这里改成绝对路径
disable-ipv6=true
enable-rpc=true
rpc-allow-origin-all=true
rpc-listen-all=true
rpc-listen-port=6800
continue=true
input-file=/etc/aria2/aria2.session
#rpc-user=admin
#rpc-passwd=password
save-session=/etc/aria2/aria2.session
save-session-interval=7200
max-concurrent-downloads=20
max-connection-per-server=256
min-split-size=256k
#log=/var/log/aria2/aria2.log
# Complete delete .aria2 files
on-download-complete=/etc/aria2/delete_aria2
max-overall-upload-limit=5K
max-upload-limit=5K
follow-torrent=true
#BT
bt-request-peer-speed-limit=200K
#PT download
bt-max-peers=48
listen-port=26834
enable-dht=false
bt-enable-lpd=false
enable-peer-exchange=false
user-agent=uTorrent/341(109279400)(30888)
peer-id-prefix=-UT341-
seed-ratio=0
force-save=true
bt-hash-check-seed=true
bt-seed-unverified=true
bt-save-metadata=true

ダウンロード中の情報を保存するための新しい aria2.session を作成します。

touch /etc/aria2/aria2.session

起動

起動ファイルの設定

#!/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 aria2cn"
    sudo -u root aria2c --conf-path=/etc/aria2/aria2.conf -D
    #sudo -u后面的是你正在使用的用户名,因为我用的root
;;
stop)
    echo -n "Shutting down aria2c "
    killall aria2c
;;
restart)
    echo -n "Shutting down aria2c  "
    killall aria2c
sleep 3
echo -n "Starting aria2c"
    sudo -u root aria2c --conf-path=/etc/aria2/aria2.conf -D
    #同上面的一样,根据自己的用户名改root。
;;
*)
    echo 'Usage:' `basename $0` '[option]'
    echo 'Available option:'
    for option in start stop restart
    do
    echo '  -' $option
    done
;;
esac

スタートアップファイルに権限を与え、起動時にaria2を自動的に実行します。

sudo chmod 755 /etc/init.d/aria2c
update-rc.d aria2c defaults

アリア2を開始します

sudo service aria2c start

参考記事

おすすめ

転載: blog.csdn.net/MrTeacher/article/details/102803548