Updated: October 4, 2011
I apologize in advanced for not spelling μ properly, but then most people will search and spell utorrent. Anyhow, utorrent is probably the most popular BitTorrent client in the Western hemisphere. It's fast, light and easy to use, just the kind of thing you need and expect from a peer-to-peer sharing software. There's only one problem. No Linux build.
Or rather, there WAS one problem. If there's anything that might give you a good indication that Linux is slowly making into the global conscience, it's when highly popular vendors of Windows software create forks for Linux. True, it's still an early release, labeled alpha, but it's the sprout that might one day grow into Jack's Beanstalk. I'm going to show you how to setup and test utorrent on Linux, nickname lutorrent.
Yes, I must warn you. Early release, unknown quality, possible bugs. Moreover, to setup luttorent on Linux, you will need to dabble in the command line a little, which is not for everyone.
The Linux version is dubbed utorrent Server alpha (Build 25053) and weighs only 1.34MB. After downloading the archive, just extract it anywhere. The program is fully self-contained inside the archive. The binary is called utserver. In theory, you can fire up the program right there and use it. However, it won't really work just yet, as you need to configure a few more things.
Therefore, before we launch the Web interface, we must configure the utserver.conf file. This is a must, it seems. Trying to setup lutorrent using the Web interface will not really work yet.
utserver.conf file does not exist by default. Create it in the same directory where utserver binary is located. This file needs to be populated with utorrent directives, which are line separated key value pairs. The syntax is not difficult, but it's not easy, either. You won't get far without reading the utserver.html help file bundled with the lutorrent archive. This is the primary reason why lutorrent is not really ready for the masses, as few people will want to open local HTML files and read boring geek stuff.
Here's a sample file:
Let's try to understand what we have here:
ut_webui_port is the Web UI port, as stated. In other words, when you want to connect to your Web console, you will use the : separator and the port number to do that. In our example, assuming you want to connect locally:
The default user is admin; the default password is blank. Not important if you permit access to port 8080 only within your network, but beware exposing password-less services to external world.
dir_ directives specify where your torrents, finished downloads and temporary files will go. You must exercise some caution, to avoid potentially exposing private data or clobbering a system partition. Nothing critical, but the temptation is to quickly skim through the settings and get running, whereas you should slow down and setup everything carefully.
Basically, you can start utserver now, but there are many other parameters you can set, like UPnP, seeding ratio, throttling the number of connections and more. I advise you not to skip these steps. For example, UPnP is best left to FALSE. Instead, you should manually setup ports in your router or firewall, but this can be tricky if you're not skilled or if you assign dynamic IP addresses to your network clients. So think and plan wisely.
Ready? Go. Start the utserver binary. You can background it if you wish. You can also use nohup so it doesn't die when you close the terminal. Again, this brings us back to the relative geekiness of the current setup.
Now, open the browser and go to localhost:<port>/gui/. It will look something like the screenshot below, only without an active download just yet, as we haven't go any torrents yet.
There are several ways you can add new files to luttorent. You can click the open button and then either browse for a downloaded .torrent file or point to a torrent URL.
Alternatively, if you click on a download link in a web page, when the browser asks you what to do with it, in case you do not have seed file links automatically configured, search for the utserver binary and click OK.
And then, you'll see something like this:
You can manage your downloads and uploads just as you would in Windows. Right-click, pause, cancel, check transfer ratio and all the usual fun.
Once you have the configuration file in place, you can check your settings using the Preferences menu in the Web console. At the moment, I'm not sure if the menu is just a placeholder or not. It might work and allow you to change settings, but only if there's an existing utserver.conf file in place. However, without the file, it won't work at all, that's for sure.
Let me be a boring old git for a moment and preach a little. First, make sure you setup your network properly - forward ports, decide on the optimal transfer rates, choose the right directory for your downloads. Then, work slowly through the configuration file and input sane and safe settings, which won't kill your bandwidth, potentially get you banned as an accidental leecher or lead to embarrassing exposures of that trip to that BDSM conference in Amsterdam last year. Security card is overplayed when it comes to P2P, but do be wise when, where and how to search for what you need. Lastly, what and how you download stuff is entirely up to you.
lutorrent is a nice start. Far from being the elegant and simple product you get on Windows, but these baby steps are important. You will have to download and extract the archive, manually create the configuration file and work a tiny bit harder when it comes to your torrents. No integrated GUI, only a Web console, but it's quite manageable.
I hope you liked this. I'm considering doing a review of various Linux BitTorrent client, so if this kind of thing picks up, then we might see one coming soon. That said, I'd love to see a proper utorrent build for Linux, with or without a Greek ¼.