skip to content

aria2c Download Utility

Fast, multi-protocol download utility supporting HTTP(S), FTP, SFTP, BitTorrent, and Metalink with resumption and parallel connections.

2 min read 7 snippets 3d ago

aria2c Download Utility#

aria2c is a lightweight multi-protocol download utility. It supports HTTP(S), FTP, SFTP, BitTorrent, and Metalink, can open multiple connections per file, and resumes interrupted downloads.

Basic downloads#

# Download a file (HTTP, HTTPS, FTP, or magnet link)
aria2c https://example.com/file.iso

# Rename the output file
aria2c --out=ubuntu-24.04.iso https://releases.ubuntu.com/24.04/ubuntu-24.04-desktop-amd64.iso

# Resume an interrupted download
aria2c -c https://example.com/large-file.tar.gz

Parallel connections & speed#

# Open 8 connections to the same file (faster on slow servers)
aria2c --split=8 https://example.com/large.iso

# Set maximum download speed (bytes/sec; use K/M suffixes)
aria2c --max-download-limit=2M https://example.com/large.iso

# Download multiple files in parallel (not sequentially)
aria2c --force-sequential=false https://example.com/a.zip https://example.com/b.zip

Batch downloads from a file#

# Download URLs listed one-per-line in a text file
aria2c --input-file=/path/to/urls.txt

# Download 1 at a time, resume partials, save to ~/Downloads
aria2c -j 1 -c -d ~/Downloads --input-file=/path/to/urls.txt

# Allow up to 4 parallel downloads from the list
aria2c --input-file=urls.txt --max-concurrent-downloads=4

urls.txt format β€” each URI on its own line; options can follow the URI line:

https://example.com/file1.tar.gz
  out=file1.tar.gz
https://example.com/file2.zip
https://mirror.example.com/file3.iso
  dir=/tmp/isos
# Download via torrent file
aria2c https://example.com/ubuntu.torrent

# Download magnet link
aria2c "magnet:?xt=urn:btih:…"

# Download from torrent WITHOUT saving the .torrent file itself
aria2c --follow-torrent=mem "magnet:?xt=urn:btih:…"

# Seed ratio limit (stop seeding after uploading 2Γ— what was downloaded)
aria2c --seed-ratio=2.0 ubuntu.torrent

FTP / SFTP with authentication#

# FTP download with credentials
aria2c --ftp-user=myuser --ftp-passwd=mypassword ftp://ftp.example.com/pub/file.tar

# SFTP (requires private key or password)
aria2c --ftp-user=myuser sftp://server.example.com/home/myuser/data.tar.gz

Useful flags reference#

FlagDefaultEffect
-c / --continuefalseResume partially downloaded file
-d DIR.Save directory
-o NAMEfrom URLOutput filename
-j N / --max-concurrent-downloads5Max parallel downloads
-x N / --max-connection-per-server1Connections per server
-s N / --split5Chunks per file
--max-download-limit0 (unlimited)Max speed (bytes/s)
--max-upload-limit0 (unlimited)Max seed speed
-i FILEβ€”URL list file
--follow-torrenttruemem = don’t save .torrent

Checksum verification#

# Verify downloaded file against a known hash
aria2c --checksum=sha-256=<hash> https://example.com/file.iso