aria2 讓下載提速
導讀aria2 是一個自由、開源、輕量級多協議和多源的命令列下載工具,它支援 HTTP/HTTPS、FTP、SFTP、 BitTorrent 和 Metalink 協議,所以給我們使用者帶來不少便捷。
aria2 是一個自由、開源、輕量級多協議和多源的命令列下載工具,它支援 HTTP/HTTPS、FTP、SFTP、 BitTorrent 和 Metalink 協議;aria2 可以通過內建的 JSON-RPC 和 XML-RPC 介面來操縱。aria2 下載檔案的時候,自動驗證資料區塊,它可以通過多個來源或者多個協議下載一個檔案,並且會嘗試利用你的最大下載頻寬;預設情況下,所有的 Linux 發行版都包括 aria2,所以我們可以從官方庫中很容易的安裝。一些 GUI 下載管理員例如uget 使用 aria2 作為外掛程式來提高下載速度。
Aria2 特性
- 支援 HTTP/HTTPS GET
- 支援 HTTP 代理
- 支援 HTTP BASIC 認證
- 支援 HTTP 代理認證
- 支援 FTP (主動、被動模式)
- 通過 HTTP 代理的 FTP(GET 命令列或者隧道)
- 分段下載
- 支援 Cookie
- 可以作為守護進程運行。
- 支援使用 fast 擴充的 BitTorrent 協議
- 支援在多檔案 torrent 中選擇檔案
- 支援 Metalink 3.0 版本(HTTP/FTP/BitTorrent)
- 限制下載、上傳速度
1.Linux 下安裝 aria2我們可以很容易的在所有的 Linux 發行版上安裝 aria2 命令列下載器,例如 Debian、 Ubuntu、 Mint、 RHEL、 CentOS、 Fedora、 suse、 openSUSE、 Arch Linux、 Manjaro、 Mageia 等等……只需要輸入下面的命令安裝即可。對於 CentOS、 RHEL 系統,我們需要開啟uget 或者RPMForge 庫的支援。
[對於 Debian、 Ubuntu 和 Mint]$ sudo apt-get install aria2[對於 CentOS、 RHEL、 Fedora 21 和更早些的作業系統]# yum install aria2[Fedora 22 和 之後的系統]# dnf install aria2[對於 suse 和 openSUSE]# zypper install wget[Mageia]# urpmi aria2[對於 Debian、 Ubuntu 和 Mint]$ sudo pacman -S aria2
2.下載單個檔案下面的命令將會從指定的 URL 中下載一個檔案,並且儲存在目前的目錄,在下載檔案的過程中,我們可以看到檔案的(日期、時間、下載速度和下載進度)。
# aria2c https://download.owncloud.org/community/owncloud-9.0.0.tar.bz2[#986c80 19MiB/21MiB(90%) CN:1 DL:3.0MiB]03/22 09:49:13 [NOTICE] Download complete: /opt/owncloud-9.0.0.tar.bz2Download Results:gid |stat|avg speed |path/URI======+====+===========+=======================================================986c80|OK | 3.0MiB/s|/opt/owncloud-9.0.0.tar.bz2Status Legend:(OK):download completed.
3.使用不同的名字儲存檔案在初始化下載的時候,我們可以使用 -o(小寫)選項在儲存檔案的時候使用不同的名字。這兒我們將要使用 owncloud.zip 檔案名稱來儲存檔案。
# aria2c -o owncloud.zip https://download.owncloud.org/community/owncloud-9.0.0.tar.bz2[#d31304 16MiB/21MiB(74%) CN:1 DL:6.2MiB]03/22 09:51:02 [NOTICE] Download complete: /opt/owncloud.zipDownload Results:gid |stat|avg speed |path/URI======+====+===========+=======================================================d31304|OK | 7.3MiB/s|/opt/owncloud.zipStatus Legend:(OK):download completed.
4.下載速度限制預設情況下,aria2 會利用全部頻寬來下載檔案,在檔案下載完成之前,我們在伺服器就什麼也做不了(這將會影響其他服務訪問頻寬)。所以在下載大檔案時最好使用
–max-download-limit
選項來避免進一步的問題。
# aria2c --max-download-limit=500k https://download.owncloud.org/community/owncloud-9.0.0.tar.bz2[#7f9fbf 21MiB/21MiB(99%) CN:1 DL:466KiB]03/22 09:54:51 [NOTICE] Download complete: /opt/owncloud-9.0.0.tar.bz2Download Results:gid |stat|avg speed |path/URI======+====+===========+=======================================================7f9fbf|OK | 462KiB/s|/opt/owncloud-9.0.0.tar.bz2Status Legend:(OK):download completed.
5.下載多個檔案下面的命令將會從指定位置下載超過一個的檔案並儲存到目前的目錄,在下載檔案的過程中,我們可以看到檔案的(日期、時間、下載速度和下載進度)。
# aria2c -Z https://download.owncloud.org/community/owncloud-9.0.0.tar.bz2 ftp://ftp.gnu.org/gnu/wget/wget-1.17.tar.gz[DL:1.7MiB][#53533c 272KiB/21MiB(1%)][#b52bb1 768KiB/3.6MiB(20%)]03/22 10:25:54 [NOTICE] Download complete: /opt/wget-1.17.tar.gz[#53533c 18MiB/21MiB(86%) CN:1 DL:3.2MiB]03/22 10:25:59 [NOTICE] Download complete: /opt/owncloud-9.0.0.tar.bz2Download Results:gid |stat|avg speed |path/URI======+====+===========+=======================================================b52bb1|OK | 2.8MiB/s|/opt/wget-1.17.tar.gz53533c|OK | 3.4MiB/s|/opt/owncloud-9.0.0.tar.bz2Status Legend:(OK):download completed.
6.續傳未完成的下載當你遇到一些網路連接問題或者系統問題的時候,並將要下載一個大檔案(例如: ISO 鏡像檔案),我建議你使用 -c 選項,它可以協助我們從該狀態續傳未完成的下載,並且像往常一樣完成。不然的話,當你再次下載,它將會初始化新的下載,並儲存成一個不同的檔案名稱(自動的在檔案名稱後面添加 .1)。注意:如果出現了任何中斷,aria2 使用 .aria2 尾碼儲存(未完成的)檔案。
# aria2c -c https://download.owncloud.org/community/owncloud-9.0.0.tar.bz2[#db0b08 8.2MiB/21MiB(38%) CN:1 DL:3.1MiB ETA:4s]^C03/22 10:09:26 [NOTICE] Shutdown sequence commencing... Press Ctrl-C again for emergency shutdown.03/22 10:09:26 [NOTICE] Download GID#db0b08bf55d5908d not complete: /opt/owncloud-9.0.0.tar.bz2Download Results:gid |stat|avg speed |path/URI======+====+===========+=======================================================db0b08|INPR| 3.3MiB/s|/opt/owncloud-9.0.0.tar.bz2Status Legend:(INPR):download in-progress.如果重新啟動傳輸,aria2 將會恢複下載。# aria2c -c https://download.owncloud.org/community/owncloud-9.0.0.tar.bz2[#873d08 21MiB/21MiB(98%) CN:1 DL:2.7MiB]03/22 10:09:57 [NOTICE] Download complete: /opt/owncloud-9.0.0.tar.bz2Download Results:gid |stat|avg speed |path/URI======+====+===========+=======================================================873d08|OK | 1.9MiB/s|/opt/owncloud-9.0.0.tar.bz2Status Legend:(OK):download completed.
7.從檔案擷取輸入就像 wget 可以從一個檔案擷取輸入的 URL 列表來下載一樣。我們需要建立一個檔案,將每一個 URL 儲存在單獨的行中。ara2 命令列可以添加 -i 選項來執行此操作。
# aria2c -i test-aria2.txt[DL:3.9MiB][#b97984 192KiB/21MiB(0%)][#673c8e 2.5MiB/3.6MiB(69%)]03/22 10:14:22 [NOTICE] Download complete: /opt/wget-1.17.tar.gz[#b97984 19MiB/21MiB(90%) CN:1 DL:2.5MiB]03/22 10:14:30 [NOTICE] Download complete: /opt/owncloud-9.0.0.tar.bz2Download Results:gid |stat|avg speed |path/URI======+====+===========+=======================================================673c8e|OK | 4.3MiB/s|/opt/wget-1.17.tar.gzb97984|OK | 2.5MiB/s|/opt/owncloud-9.0.0.tar.bz2Status Legend:(OK):download completed.
8.每個主機使用兩個串連來下載預設情況,每次下載串連到一台伺服器的最大數目,對於一條主機只能建立一條。我們可以通過 aria2 命令列添加 -x2(2 表示兩個串連)來建立到每台主機的多個串連,以加快下載速度。
# aria2c -x2 https://download.owncloud.org/community/owncloud-9.0.0.tar.bz2[#ddd4cd 18MiB/21MiB(83%) CN:1 DL:5.0MiB]03/22 10:16:27 [NOTICE] Download complete: /opt/owncloud-9.0.0.tar.bz2Download Results:gid |stat|avg speed |path/URI======+====+===========+=======================================================ddd4cd|OK | 5.5MiB/s|/opt/owncloud-9.0.0.tar.bz2Status Legend:(OK):download completed.
9.下載 BitTorrent 種子檔案我們可以使用 aria2 命令列直接下載一個 BitTorrent 種子檔案:
# aria2c https://torcache.net/torrent/C86F4E743253E0EBF3090CCFFCC9B56FA38451A3.torrent?title=[kat.cr]irudhi.suttru.2015.official.teaser.full.hd.1080p.pathi.team.sr[#388321 0B/0B CN:1 DL:0B] 03/22 20:06:14 [NOTICE] Download complete: /opt/[kat.cr]irudhi.suttru.2015.official.teaser.full.hd.1080p.pathi.team.sr.torrent03/22 20:06:14 [ERROR] Exception caughtException: [BtPostDownloadHandler.cc:98] errorCode=25 Could not parse BitTorrent metainfoDownload Results:gid |stat|avg speed |path/URI======+====+===========+=======================================================388321|OK | 11MiB/s|/opt/[kat.cr]irudhi.suttru.2015.official.teaser.full.hd.1080p.pathi.team.sr.torrentStatus Legend:(OK):download completed.
10.下載 BitTorrent 磁力連結使用 aria2 我們也可以通過 BitTorrent 磁力連結直接下載一個種子檔案:
# aria2c 'magnet:?xt=urn:btih:248D0A1CD08284299DE78D5C1ED359BB46717D8C'
11.下載 BitTorrent Metalink 種子我們也可以通過 aria2 命令列直接下載一個 Metalink 檔案。
# aria2c https://curl.haxx.se/metalink.cgi?curl=tar.bz2
12.從密碼保護的網站下載一個檔案或者,我們也可以從一個密碼保護網站下載一個檔案。下面的命令列將會從一個密碼保護網站中下載檔案。
# aria2c --http-user=xxx --http-password=xxx https://download.owncloud.org/community/owncloud-9.0.0.tar.bz2# aria2c --ftp-user=xxx --ftp-password=xxx ftp://ftp.gnu.org/gnu/wget/wget-1.17.tar.gz
13.閱讀