130

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.

4
  • 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, 2011 at 11:32
  • 1
    I need cli for headless server. Jun 21, 2015 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, 2017 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. Jan 24, 2017 at 12:14

9 Answers 9

90

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

2
  • After installing can't start on Debian. Jun 21, 2015 at 11:25
  • @VitalyZdanevich try ubuntu? ; )
    – djeikyb
    Jun 21, 2015 at 12:40
72

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

sudo apt-get install transmission-cli

3
  • 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, 2011 at 14:11
  • 4
    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, 2019 at 16:48
  • this is deprecated
    – chovy
    Jul 19, 2020 at 21:41
38

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.

1
  • 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. Jan 31, 2020 at 17:01
28

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
11

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

sudo apt-get install ctorrent
1
  • slight note to this answer: ctorrent can't parse metainfo of huge torrents. I'm trying to move a terrabyte with it right now. no chance.
    – GottZ
    Jan 11 at 11:53
7

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
1
  • Is there a command line UI though? it seems to not be a fully featured bt client
    – chovy
    Dec 18, 2016 at 3:39
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
2
  • 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, 2011 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, 2011 at 9:22
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.

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).

Not the answer you're looking for? Browse other questions tagged .