I want to deploy it on my VPS server to download resources quickly.
This could save me a lot of time since some resources are in a foreign country,
312 Answers
Transmission
The default BitTorrent client of Ubuntu Desktop, Transmission, has a command line interface (which is not installed by default, the package is transmission-daemon). The daemon can be setup so that it may be interacted with through the terminal and through a web interface.
Transmission is a good bittorrent client because:
- It's lightweight with either interface.
- It's stable, never had it crashing.
- It's easy to understand.
- It has function expected of a modern bittorrent client, e.g. local peer discovery, full encryption, and support for DHT, µTP, PEX and magnet links.
For more info on its features, see this page.
4rTorrent![software-center image]()
I have written a detailed tutorial about rTorrent, including its installation and configuration. Check it out here or see the official user guide.
rTorrent's pros
- lightweight
- ultra-fast downloading speed
- very effective BitTorrent traffic encryption
- supported by all the private trackers
- very customizable
rTorrent's cons
- might be difficult to set up (configuration file, no GUI), example config file for beginners
Deluge ![deluge install]()
Deluge is a fully featured, yet lightweight torrent client that is written in Python and utilises libtorrent(rasterbar) C++ library at its core.
- Standalone or Thinclient mode (split core/ui) to enable connecting to daemon (deluged) running remotely or in the background.
Multiple user-interfaces, supports access from most platforms:
Many Plugins and application extensions
- Supports all the usual bittorrent client functions: DHT, LPD, PEX, UPNP, Encryption, Proxy, etc.
aria2c ![install aria2c]()
A CLI downloader supporting HTTP, FTP, and Torrents.
To download a torrent:
aria2c file.torrent
You can also point it to a remote torrent file web site so you don't need to download the torrent file first.
Also note you can disable file allocation with this flag: --file-allocation=none.
Aria2c also supports parallel downloading on HTTP. Use the -j flag to determine how many threads. For 3 concurrent downloads of a single HTTP file see the following example:
aria2c -j 3
Azureus ![install azureus]()
Azureus/Vuse also has a console mode. [disclaimer] I was one of the developers.
To use azureus in console mode, you will need to download a couple of additional libraries from
- commons-cli.jar
- log4j.jar
If you place these in same the directory as the Vuze jar, you can launch the console ui by running:
java -jar Vuze-xxxx.jar --ui=consoleInside the CLI, type help to view the commands. A couple of useful commands are:
- show torrents
- add [url]
- start [x]
- stop [x]
- remove [x]
Here is example output from a 'show torrents' command
show torrents
> ----- 1 [>] 025.6% Azureus4.7.0.0.jar (13.26 MB) ETA: 1m 41s Speed: 295.1 kB/s / 0 B/s Amount: 3.56 MB / 0 B Connections: 11(20) / 0(4)
Total Speed (down/up): 296.6 kB/s / 2.2 kB/s
Transferred Volume (down/up/discarded): 3.56 MB / 0 B / 0 B
Total Connected Peers (seeds/peers): 11 / 0
> -----Take a look at for more information :-)
2I use it all the time :
sudo apt-get install bittornadoTo download torrents :
btdownloadcurses --max_uploads 4 --max_upload_rate 32 to_be_downloaded.torrent 1 ctorrent ![install ctorrent]()
There is a similar question on stackoverflow.com.
The accepted answer there is CTorrent so I thought I should mention it here. The description of ctorrent from packages.debian.org is as follows:
This application is written in the C++ language and doesn't require any graphical component, such as an X server. Original ctorrent's upstream has stopped its development and now it's kept updated with new releases/bug fixes by a new developer. It's built as a console program and it can be even used remotely in a machine that provides outside ssh access.
For more info you can visit following sites:
there is also an enhanced version of ctorrent which can be found at
Try utorrent linux alpha version. Its a headless server which can be controlled from your browser (web UI). .
2I use tget which is (in the author's words) "wget for torrents". It allows you do download using torrent files or magnet links. It is a node.js application.
tget 'magnet:?xt=urn:btih:0403fb4728bd788fbcb67e87d6feb241ef38c75a'To install:
npm install -g t-get I know it's an old question, but nobody mentioned peerflix.
Written in JavaScript, works great, super simple to use, has a nice, informative and colored interface.
Most importantly, it supports streaming of video and audio content through VLC (just launch it with the flag --vlc).
My recommendation without installing anything (if you have node)
npx -p webtorrent-cli webtorrent download "magent:..."It's will temporary download the webtorrent-cli pakcage, then execute the webtorretn commmand to download your torrent.
You can use torrent-dl
It was originally based off of tget, a tool mentioned in this answer, but the project has since significantly diverted from it. tget does not offer any configurability (e.g. searching popular torrent sites, customizing what port to use, downloading multiple torrents, etc) so torrent-dl adds all of these features.
Example usage (with some of the extra options):
torrent-dl -i magnet:?xt=urn:btih:b26c81363ac1a236765385a702aec107a49581b5 --port 43022 --connections 250 --uploadslots 25You can see all the options it offers on it's Github page linked at the top. It is a nodejs application, however you can download standalone binaries (MacOS and Windows binaries are also available) from the releases page on it's Github, meaning no nodejs or npm installation is required.
It can also be installed via npm, however:
npm install -g torrent-dlI am the author of this project.