Article Categories
- All Categories
-
Data Structure
-
Networking
-
RDBMS
-
Operating System
-
Java
-
MS Excel
-
iOS
-
HTML
-
CSS
-
Android
-
Python
-
C Programming
-
C++
-
C#
-
MongoDB
-
MySQL
-
Javascript
-
PHP
-
Economics & Finance
Aria2 – A Multi-Protocol Command-Line Download Tool for Linux
Aria2 is a lightweight, multi-protocol command-line download utility for Linux that supports HTTP, HTTPS, FTP, BitTorrent, and Metalink protocols. Unlike graphical download managers, Aria2 operates through terminal commands, offering superior control, efficiency, and resource management for downloading files from various sources.
Key Features
Aria2 stands out with its multi-connection downloads, allowing files to be split into segments and downloaded simultaneously from multiple sources. It supports resumable downloads, automatically continuing interrupted transfers without losing progress. The tool also provides checksum verification to ensure file integrity and offers detailed download statistics including speed, progress, and connection information.
Installation
Aria2 is available in most Linux distribution repositories. Install it using your system's package manager:
# Ubuntu/Debian sudo apt-get install aria2 # CentOS/RHEL sudo yum install aria2 # Fedora sudo dnf install aria2 # Arch Linux sudo pacman -S aria2
Basic Download Operations
Single File Download
Download a file by specifying its URL:
aria2c https://example.com/file.iso
Multiple File Downloads
Create a text file with URLs (one per line) and use the -i option:
# Create URLs file echo "https://example.com/file1.zip" > downloads.txt echo "https://example.com/file2.tar.gz" >> downloads.txt # Download all files aria2c -i downloads.txt
Protocol-Specific Features
BitTorrent Downloads
Download torrents by specifying the .torrent file or magnet link:
# Using torrent file aria2c -d ~/Downloads ubuntu-20.04.3-desktop-amd64.iso.torrent # Using magnet link aria2c "magnet:?xt=urn:btih:..."
Metalink Support
Metalink files contain multiple download sources, enabling faster downloads:
aria2c https://example.com/file.metalink
Advanced Configuration Options
| Option | Purpose | Example |
|---|---|---|
| --max-download-limit | Limit download speed | --max-download-limit=500K |
| --max-connection-per-server | Max connections per server | --max-connection-per-server=4 |
| --split | Number of segments | --split=8 |
| --dir | Download directory | --dir=/home/user/Downloads |
| --continue | Resume incomplete downloads | --continue=true |
Remote Control and Web Interface
Aria2 can run as a daemon with RPC support, enabling remote control through a web interface:
# Start aria2 RPC server aria2c --enable-rpc --rpc-listen-all # With authentication aria2c --enable-rpc --rpc-secret=mypassword --rpc-listen-all
Access the web interface at http://localhost:6800 using compatible web UIs like AriaNg or webui-aria2.
Download Control and Monitoring
Control active downloads using keyboard shortcuts:
Ctrl + C Pause download (can be resumed)
Ctrl + Z Suspend process
Monitor download progress with real-time statistics including current speed, ETA, active connections, and completion percentage.
Advantages
Low resource usage Minimal CPU and memory consumption
Cross-platform compatibility Available on Linux, Windows, and macOS
Segmented downloading Splits files for parallel downloading
Protocol versatility Supports multiple download protocols
Resumable transfers Automatic recovery from interruptions
Conclusion
Aria2 is an exceptionally powerful command-line download manager that combines multi-protocol support with advanced features like segmented downloads and remote control. Its lightweight design and extensive configuration options make it ideal for both casual users and system administrators who need reliable, efficient file downloading capabilities.
