What is rTorrent?
rTorrent is a lightweight, ncurses-based BitTorrent client for Linux and other Unix-like systems. It runs entirely in the terminal, uses minimal resources, and is ideal for headless setups such as seedboxes or home servers.
Prerequisites
- A Linux machine (Debian/Ubuntu/Fedora/Arch or similar)
- Basic knowledge of the command line
- SSH access if you’re installing on a remote server
1. Installation
Install rTorrent using your distribution’s package manager:
# Debian/Ubuntu
sudo apt update && sudo apt install rtorrent
# Fedora
sudo dnf install rtorrent
# Arch Linux
sudo pacman -S rtorrent
2. Basic Usage
Start rTorrent by running:
rtorrent
You’ll see a curses-based interface with different panes. Key commands:
- Ctrl+q: Quit
- Backspace: Load a .torrent file
- Enter: Start/stop a torrent
- Right arrow: View details of a selected torrent
3. Configuration
rTorrent reads its settings from ~/.rtorrent.rc
. Create or edit this file:
nano ~/.rtorrent.rc
Example configuration:
# Directory to save files
directory = ~/downloads
# Session directory (stores torrent state)
session = ~/.rtorrent/session
# Port range for incoming connections
port_range = 50000-50010
# Upload/download rate limits (in KiB)
upload_rate = 100
download_rate = 0 # 0 = unlimited
After editing, restart rTorrent to apply changes.
4. Automation & Advanced Tips
- Watch Directory: Automatically load torrents placed in a specific folder.
schedule = watch_directory,5,5,load_start=~/torrents/*.torrent
- Ratios & Seeding: Control seeding ratios to automate stopping after a threshold.
ratio.enable= ratio.min.set = 1.0 ratio.max.set = 2.0 ratio.upload.set = 50M schedule2 = ratio,60,60,"stop_on_ratio=1.0"
- Automation Scripts: Pair rTorrent with tools like
cron
orsystemd
for unattended operation.
5. Running as a System Service
For servers, it’s convenient to run rTorrent under systemd
so it starts automatically:
[Unit]
Description=rTorrent
After=network.target
[Service]
Type=simple
ExecStart=/usr/bin/rtorrent
ExecStop=/bin/kill -s INT $MAINPID
Restart=on-failure
User=yourusername
WorkingDirectory=/home/yourusername
[Install]
WantedBy=multi-user.target
Save this as /etc/systemd/system/rtorrent.service
, then run:
sudo systemctl daemon-reload
sudo systemctl enable --now rtorrent
6. Useful Keyboard Shortcuts
- ^d (Ctrl+d): Remove torrent from list
- + / –: Adjust download/upload priority
- Space: Pause/resume all torrents
7. Security & Best Practices
- Keep your system and rTorrent updated to the latest stable release.
- Use a VPN or seedbox for privacy if required by your use case.
- Set appropriate permissions on download and session directories.
Conclusion
rTorrent offers speed, flexibility, and full command-line control for serious Linux users.
With a tuned .rtorrent.rc
, watch directories, and systemd integration, you can run an automated,
low-overhead torrenting setup that rivals any graphical client.