Torrenting Remotely with Transmission
October 4th, 2008
Transmission is now officially my favorite Bittorrent client. It’s small and light on system resources, yet retains many of the features that initially drew me to Azureus. But the feature that I find most useful is that Transmission allows you to control a running instance from the command-line on the terminal. This makes managing my torrents remotely via SSH very easy without the need to either setup a VNC session or installing a web-interface plugin (e.g. Azureus’ HTML WebUI).
Transmission is a suite of four tools:
- transmission: The GTK+/Mac OS X graphical frontend.
- transmissioncli: The command-line interface.
- transmission-daemon: Runs in the background and takes commands from transmission-remote.
- transmission-remote: Command-line tool to send commands to either transmission-daemon or the graphical frontend.
To start torrenting remotely we first need to startup an instance of Transmission. We can do this by entering the following in terminal instance:
transmission-daemon
Typically there will be no response printed to the terminal. We can verify that tranmission-daemon has by entering the following command to get a list of all programs running under your current user account:
ps ux
If you see a line like the following in the results:
ivan 25599 0.1 0.3 60348 7896 ? Ssl Sep30 6:07 transmission-daemon
… you should be ready to use Transmission!
- To start a torrent, enter
transmission-remote --add <path to .torrent file>. - Wait a few seconds and enter
transmission-remote --listto list the status of current torrents handled by transmission-daemon. - To stop a torrent, enter
transmission-remote -t x --stop, where x is the numerical ID of the torrent shown in the left most column of the--listresponse. To restart the torrent, entertransmission-remote -t x --start. - Removing a torrent is similar. Enter
transmission-remote -t x --remove.
As long as transmission-daemon is running, you can log out from your terminal session without affecting the running torrents. They will continue to download and seed even when you are not logged on. When you are finally finish torrenting, issue the following command to terminate transmission-daemon:
killall transmission-daemon
This will terminate all instances of transmission-daemon currenting running under your current user login.