Duplicate Article
This article covers the same material as another article. More info...


Unsupported Version
This article applies to an unsupported version of Ubuntu. More info...

Parent: Internet and Networking

This page describes how to install different peer-to-peer software. Everything displayed in grey boxes is to be executed in a terminal. Check the TerminalHowto if you don't know how to open one.

Info <!> Work in progress


What is Peer-to-Peer file sharing?

Peer-to-peer (commonly abbreviated as P2P) file sharing is the sharing of files on one person's computer with other peoples' computers, without the need for a server.

P2P networks are an excellent way to transfer data around, since the creator a) doesn't have to be online all of the time and b) doesn't need expensive dedicated servers. For instance, many GNU/Linux distributions are created by small teams, or even individuals, who would never be able to offer 600MB+ CD images to each user from a website server, however thanks to P2P technology like Bittorrent everyone who downloads a CD image can then contribute their resources back to help manage the load of other people's downloads.

P2P networks are usually simple to join and do not require fixed information like a website address. This has caused many users to offer content for which they do not have redistribution rights, and media corporations have targetted users and the networks themselves. Many "advances" in newer P2P networks involve a) more deniability for the network and software makers and b) more flexibility in the network structure, principally the removal of servers (for instance the Napster network was easily shut down for piracy since it ran from a centralised set of servers, with file data being the only P2P part of the system, then later edonkey2000 used a flexible server model, allowing anyone to create their own server and remove this centralisation, and networks such as Gnutella do not use servers at all, instead using reliable users to pass data such as searches around). Contrary to internet myths, using Bittorrent is no more anonymous/secure than any other form of filesharing. Bittorrent tends to be faster at transferring large files than most forms of filesharing, but is mainly only designed for sharing one or few files simultaneously.

Depending on the country you live in, it may be illegal to download some files using P2P. As a general rule of thumb, it is illegal to download commercially-released music and movies from P2P. You should make sure that you can legally download the files you'd like to before you do so.

File-sharing software

There are many file-sharing services available, and each requires a compatible 'client' application to send and receive files using it. Below are some of the most common P2P applications which can be installed on Ubuntu.


BitTorrent is an open-source protocol and there is already a client for it installed in Ubuntu 5.04 (Hoary Hedgehog), Ubuntu 5.10 (Breezy Badger) and Ubuntu 6.06 LTS (Dapper Drake). For more information, see BitTorrent.


A free version of Limewire Pro: FrostWire


You can find gtk-gnutella in the Universe repository; however, the latest version includes the most up-to-date list of Gnutella servers and is thus guaranteed to connect properly. To install gtk-gnutella, visit its project page and click on "Download", which will lead you to the download link on Sourceforge. Click "Download" next to the latest (or only) release, then choose the .deb file starting with "GTK2_gtk-gnutella".

When you have the .deb downloaded, open a terminal and type:

cd /path/to/download/folder/
sudo dpkg -i GTK2_gtk-gnutella*.deb

DC++ - Direct Connect

First, you need to install the dependencies:

sudo apt-get install libatk1.0-0 libbz2-1.0 libc6 libgcc1 libglade2-0 libglib2.0-0 libgtk2.0-0 libpango1.0-0 libstdc++6 libxml2 zlib1g

Download the package:

wget http://newstuff.orcon.net.nz/ubuntu/dcpp/dcpp_0.0.20050809cvs-1~mird_i386.deb

Note: this is a temporary URL. If you get a "404 file not found" or some other error, check the howto thread (below) for updated information.

Install the package:

sudo dpkg -i dcpp_0.0.*_i386.deb

The DC++ icon will show up in the Applications -> Internet menu.

Problems? Check out this thread on the Ubuntu forums: http://ubuntuforums.org/showthread.php?t=42084

Amule - eMule client

First, add extra repositories. If you don't know how, go to AddingRepositoriesHowto.

Install the client:

sudo apt-get install amule

The Amule icon will show up in the Applications --> Internet menu.

Amule uses the same temporary file system as Emule, so if you are switching from Windows and have partial downloads in Emule then you can simply copy those into Amule's temporary folder.

MLDonkey - Daemon for multiple networks

MLDonkey can connect to several networks at once such as Bittorrent, Edonkey2000, Gnutella, etc. It's other major difference from most P2P applications is that it runs as a daemon, which means it is a non-graphical service which can run, for instance, at boot-up and diligently download and share files without you noticing. This daemon can be controlled through many interfaces, ranging from text-based telnet, web browsers and fully features GUIs. It can also be accessed remotely as long as the remote computer's IP address is on a list of "allowed IPs". It uses it's own temporary file scheme, but can import folders of temporary files created by Emule or Amule, so you can carry on from where you left off with those other applications.

There is a help page dedicated to MLDonkey.

P2PHowTo (last edited 2013-04-10 15:08:23 by localhost)