Transmission BitTorrent Client
- 1 What is Transmission?
- 2 Compiling and Installation
- 3 Configuration
- 4 Usage
- 5 Troubleshooting
- 6 Links and Reference
What is Transmission?
Transmission is a BitTorrent client package that (as of version 1.34) also contains Clutch, an integrated webUI. It easy to compile, install, configure and operate, and it has relatively low memory and cpu usage.
Compiling and Installation
The Transmission Wiki Howto Build page gives details. In short, three binaries are created:
- transmission-daemon (daemon which runs with the webUI active)
- transmission-remote (a remote control utility for transmission-daemon and transmission), and
- transmissioncli (the bittorrent client).
The Transmission wiki also provides an initscript, but it is likely that you will want to modify that script.
Note:A Forum user has reported that the version in the optware feed gives segfaults when installed in his open stock linkstation pro, following the instructions on transmissions site for compiling should be the best approach.
- You will probably want to set your LinkStation to a static IP.
- Port forwarding is a good idea/pretty much essential. Transmission listens on port 51413, by default. The Transmission wiki has an excellent Port Forwarding HowTo that spells out pretty much everything. It is comprehensive and gives many good pointers, including the Verify and Common Problems sections.
- Verify your network setup by checking that port 51413 is open at your IP, by using the tool at CanYouSeeMe.org.
Use the WebUI, which you can see through any modern browser at http://<your-Linkstation's-IP>:9091/transmission/web/ or http://<your-Linkstation's-IP>:9091. In the bottom left-hand corner there is a small tab that allows you to set:
- Add transfers: Download to: (choose /mnt/torrents or whatever dir you want here)
- Network: Incoming TCP Port: (default is 51413)
- Transfers: Start transfers when added
- Encryption: Ignore unencrypted peers
- Limit total bandwidth: (set these lower if you experience network performance problems)
- Download Rate: KB/s
- Upload Rate: KB/s
- Web Client: Refresh Rate:
- Total Upload/Download Rates
There is also a Inspector function w/ Info and Activity buttons on the webUI that allows for seeing details about your torrents.
We assume that you have a general idea of how torrents work, and a familiarity with Torrent Trackers. A particulary good tracker that is germane to our needs is LinuxTracker.org. We will use it here in the examples. Be aware that to upload torrent files, you must have open an account there, as is the case for the vast majority of sites.
man pages for Transmission 1.34
For reference, see these man pages for transmissioncli Transmission 1.34. Note that the commands and options have changed a lot since earlier versions of Transmission, so old scripts may not work for you.
- Download a torrent file to your LS. This can be done with wget, but is easier using your desktop's web browser, and then dragging and dropping that torrrent file to a mounted share of your LS.
- To use the WebUI of Transmission, point your browser to <ip of you linkstation>:9091 - you should see something like the screenshot shown on the top of this page.
- Use the Open button to choose & load the torrent file. The download should begin shortly. As is the case w/ torrents, it may be very fast or quite slow, depending on the number of seeders and they upload limits.
Create a torrent file
Place the file you wish to share in your torrent directory. The command form for creating a new torrent file in Transmission 1.34 is:
transmissioncli -n <file to be shared> -a <URL of torrent announcement> <torrent file filename>
For example, if the file you want to share is vmlinuz92608foonasem.gz, then use the cli binary like this:
transmissioncli -n vmlinuz92608foonasem.gz -a http://linuxtracker.org:2710/announce vmlinuz92608foonasem.torrent
After executing this you should have a file called vmlinuz92608foonasem.torrent, which is suitable for uploading to a torrrent tracker site.
Upload to torrent tracker/site and Seeding
This will vary by tracker site. The FAQ or HowTo section at the tracker will provide details. Basically, you upload your initial torrent file through your browser to the tracker site. It will then register that torrent, give it an ID number, and post it in the torrent list.
To seed it, download the registered torrent file (important - you must download a registered torrent file to seed - for the majority of trackers, only a registered torrent file will allow you to seed), place it in your torrents directory, and use Transmission's webUI to open it. It will scan the source file that is to be shared and verify it. If successful it should then display something like this in the info panel to the right of the torrent listings:
Information Tracker: http://linuxtracker.org:2710/cecf6b59f1ba527975b8fa29289040c6/announce Hash: a08f27383af3d7726cfdea14005944e5bf510abe Secure: Public Torrent Comment: N/A
Ideally, this works best to get a friend to try to download the torrent file from the tracker, and use some torrent client to download the actual shared file. You should be able to see upload activity on the webUI of Transmission from your LinkStation. In all likelihood you will not be able to download your own shared file.
- The torrent that I'm trying to seed reads "Unregistered Torrent". Normally, this problem is because you are trying to seed w/ your original torrent file. The fix for this is usually to upload your raw torrent file to the tracker of your choice, and then download it to your torrent dir. Then open it w/ Transmission and it should proceed as expected.
- My torrent is registered, but seeding doesn't seem to work, because I know someone is trying to download the file and it isn't working on their end. This could be a port forwarding problem. The easy but really (stupidly) insecure way is to put your box on a DMZ, but this is way too risky in terms of network security. It is better to make sure you have port forwarding set up for port 51413 (TCP, port start:51413, port end:51413, port map: 51413). See the Port Forwarding section of the Transmission wiki listed above, or the PortForwarding.com reference listed below.