117

Yesterday one of my friends asked me if there is some torrent client that runs on the command-line.

I had no answer for him, but I think that you have some.

  • Why do you want a cli torrent client? Do you just prefer cli? Do you need it for a headless server? Do you need to pass it commands via bash script? – djeikyb Mar 11 '11 at 11:32
  • 1
    I need cli for headless server. – Vitaly Zdanevich Jun 21 '15 at 10:41
  • @EliahKagan my question was asked Mar 11, 2011. mlzboy question was asked Oct 12, 2011. How is my a duplicate? – Wolfy Jan 24 '17 at 12:01
  • 2
    @Wolfy Although newer questions are often closed as duplicates of older ones (especially when the newer one is unanswered), the relative ages of the questions isn't really, by itself, a factor. I think either this or that question would be okay as the main question. I think that one has an overall higher quality of answers, so I picked it as the master when voting to close. – Eliah Kagan Jan 24 '17 at 12:14
84

Deluge is controllable by gui, web, and console.

To setup remote access to a deluge server see the thinclient guide.

deluge-console

deluge-console

deluge-gtk

standard deluge gtk ui

deluge-web

deluge web ui

| improve this answer | |
  • After installing can't start on Debian. – Vitaly Zdanevich Jun 21 '15 at 11:25
  • @VitalyZdanevich try ubuntu? ; ) – djeikyb Jun 21 '15 at 12:40
66

I think the default torrent client transmission itself has a cli interface and can be installed with

sudo apt-get install transmission-cli

| improve this answer | |
  • 2
    Another vote for transmission. In daemon mode, you can control an already-running instance of transmission to add/removetorrents, check on status, etc. – user11553 Mar 11 '11 at 14:11
  • 1
    Update via github.com/transmission/transmission: Prior to development of transmission-remote, the standalone client transmission-cli was created. Limited to a single torrent at a time, transmission-cli is deprecated and exists primarily to support older hardware dependent upon it. In almost all instances, transmission-remote should be used instead. – Jose Alban Nov 2 '19 at 16:48
  • this is deprecated – chovy Jul 19 at 21:41
34

I use rtorrent on a headless server to serve Debian and Ubuntu ISOs, works quite well and can saturate my network link. Dependencies and memory usage are minimal.

| improve this answer | |
  • I've tried it and am generally quite happy with it working, but it sometimes crashes (something about a corrupted doubly linked list appears), which makes it unsuitable to be left alone long-term (at least for me). Also, if the server is not beefy (i.e. the old Raspberry Pi I run it on), the UI can lag, since it seems to share a basic operation thread with the UI controls for some things. – Daniel Gray Jan 31 at 17:01
26

aria2 (sf.net) is a multi-protocol & multi-source, cross platform download utility. The supported protocols are HTTP(S), FTP, BitTorrent, Metalink. It can download a file from multiple sources/protocols and tries to utilize your maximum download bandwidth.

http://sourceforge.net/apps/trac/aria2/wiki/UsageExample#BitTorrentDownload

Example command-line installation and usage:

$ sudo apt-get install -y aria2
$ aria2c http://gtf.org/garzik/bitcoin/bootstrap.dat.torrent
| improve this answer | |
11

Yes. I use ctorrent as my primary client. Usually from within tmux.

sudo apt-get install ctorrent
| improve this answer | |
6

I was looking for a torrent client for ubuntu server a few weeks ago.I didn't found anything interesting but µTorrent server.It runs a web interface which can be accessible from serveraddress:8000/gui.

Here is a screenshot of the web interface:

enter image description here

It can be downloaded from http://www.utorrent.com/downloads/linux

Configuration manual is included in the downloaded package (You wont install it.Only configure it and run the executable when you want to use it.).Be aware that this is a alpha version and it may have some problems.They say this version is only for 32bit linux but I used it on my 64bit server and I didn't experienced any problems.

Another option is rtorrent, a CLI application.It's not user-friendly and I had problems with different torrent files.You can install it from repositories:

sudo apt-get install rtorrent
| improve this answer | |
  • 2
    rtorrent is well documented and if follow manual carefully it is easy to use. It is very lightweight with minimal dependencies. It can be extensively configured. And does not require to have web server what was very important for me – Osis Mar 11 '11 at 9:07
  • I only said it's not user friendly.Many CLI apps are easy to use without following manuals.Besides I couldn't download with different torrent file from different providers (piratebay for example).µTorrent worked better. – Pedram Mar 11 '11 at 9:22
6

WebTorrent

WebTorrent is a streaming torrent client for node.js and the browser. It also has a command line app.

Installation

npm install webtorrent -g
webtorrent --help

You need to have node.js and npm installed for using webtorrent.

To download a torrent:

webtorrent magnet_uri
| improve this answer | |
  • Is there a command line UI though? it seems to not be a fully featured bt client – chovy Dec 18 '16 at 3:39
3

There are some torrent clients that you can run on a headless server. I dunno if you can control them via console, but the following clients are controllable via web interface:

  • torrentflux
  • deluge

Torrentflux is available in the Ubuntu repositories, but I think in a quite outdated version now.

Deluge can be obtained from the getdeb repositories. It also has a GUI client software that you could run from your desktop and connect to the "headless client" running on your server to control it.

| improve this answer | |
3

Or you could run install deluge torrent, run it as a daemon, and access it through Web Interface or remote apps (eg. Transdroid on Android).

| improve this answer | |

Not the answer you're looking for? Browse other questions tagged or ask your own question.