Skip navigation.

Syndicate

Syndicate content

User login

Update on Ubuntu Fiesty BitTorrent Machine

Previously, I’ve bitched about getting Azureus running on Ubuntu Feisty. A commenter pointed out the new version of Azureus, 3.0.3.4, which I wasn’t able to install through automatic updates but had no trouble installing from the Linux x64 tarball. I’m pleased to report there was no fiddling with SWT files or deletion of archives to get it going.

I also found an alternative to the Windows-only PeerGuardian I was running on my old P2P machine. Azureus has an IP filter option that can download a blocklist from a URL, unzip it, and monitor for changes, just like PeerGuardian. I heartily recommend the Level 1 blocklist from BlueTack, which incidentally is the same list that PeerGuardian uses for P2P blocking. Azureus is smart enough to recognize the URL, download the list, unzip it, load it into its IP filters, and check for a new list every seven days. Sweet. I would point out that this blocklist (and the Azureus IP filter feature) is intended to protect torrent traffic only; if the only thing between your box and the internets is the Azureus blocklist and not a firewall, well, you’re an idiot.

I’ve also configured Azureus to allocate and zero new files on creation, so I don’t get the nasty fragmentation problem I had under Windows. And since I usually have a ton of torrents seeding or downloading, I’m boosting the Java memory limit since this box has 1GB of physical RAM and is dedicated to Azureus. The MemoryUsage page on the Azureus wiki is either out of date or not written for Linux, because the -Xmx switch is interpreted as the name of the torrent file to open. Instead I modified the /opt/azureus/azureus launch script to change the JAVA_ARGS= line to

JAVA_ARGS="-Xmx256m"

This will set the max heap size to 256MB (the Azureus default is 128MB iirc), and by extension the direct memory pool will be set to the max heap size as well, for another 256MB. That’s 512MB of memory allocated to Azureus, which (I hope) will let it more fully utilize the hardware it’s been given. Obviously up/download speed is going to be bounded by my FiOS connection speed more than the amount of RAM assigned, but more memory should make Azureus more responsive, as it will reduce the frequency of Java garbage collection.

While I was tweaking memory settings, I also doubled the disk cache to 8MB from 4MB. I doubt this will improve performance that much, but it can’t hurt.

Since I use my ReadyNAS NV+ for long-term storage of downloads, I used NFS to map the media and warez shares to my Azureus machine. I could configure Azureus to move my completed downloads automatically, but I don’t want to do that for a couple of reasons: first, I want Azureus to seed from the local filesystem rather than over NFS, and second alot of downloads require some post-processing like extracting RAR files or whatever, that I want to do before copying over.

I also installed the AzSMRC plugin, which provides a complete remove control interface using a Java client. This way I don’t have to VNC into the Azureus box to control it. I’m also installing the HTML UI plugin which I used before on my Windows Azureus machine, since it’s handy to run through an SSH tunnel for quick at-work downloads.