Install aMule on Arch Linux

Install aMule the eMule like Client for e2Dk and Kademlia networks on Arch Linux

aMule is an eMule-like client for eD2k and Kademlia networks. While these networks are quite outdated by today’s standards, they do occasionally have older content not available anywhere else. It comes with a web interface that has limited configuration options.

 

Install aMule

Install the package from the official repository with pacman.

sudo pacman -S amule

 

Configure aMule

Add the user to secondary groups (optional).

sudo usermod -a -G couchpotato,sonarr,headphones amule

 

Set the ownership on the installation directory.

sudo chown amule:amule -R /var/lib/amule

 

Set the permissions on the installation directory.

sudo chmod 770 -R /var/lib/amule

 

Generate encrypted password and copy the resulting string.

echo -n password | md5sum | cut -d ' ' -f 1

Replace password with the actual desired password.

 

Open the configuration file.

sudo nano /var/lib/amule/.aMule/amule.conf

 

Modify the configuration file as needed and save.

[ExternalConnect]
AcceptExternalConnections=1
ECPassword=<encrypted password>

Replace <encrypted password> with the password generated previously.

 

Change Download Directory

(Presumably) due to a bug download directory options get reset at restart meaning they are currently unusable. For now the download directory cannot be changed.

 

Create the download directories.

mkdir /mnt/downloads/amule/temp -p

Sub-directories will be automatically created because of the -p option.

 

Set the ownership on the download directories.

sudo chown -R amule:amule /mnt/downloads/amule

 

Set the permissions on the download directories.

sudo chmod 770 -R /mnt/downloads/amule

 

Default temporary directory is /var/lib/amule/.aMule/Temp and can be set with TempDir option in the configuration. Similarly IncomingDir option can be used to change the download directory from the default /var/lib/amule/.aMule/Incoming directory.

 

Configure aMule Web interface

Run amuleweb to create the default configuration file.

sudo -u amule amuleweb --write-config --password=password--admin-pass=password

Run amuleweb as the amule user with -u option. Replace password with unencrypted password set previously and the new web interface password respectively.

 

Run aMule Daemon

Start the daemon service.

sudo systemctl start amuled

 

Enable the daemon to run on boot.

sudo systemctl enable amuled

 

Run aMule Web Interface

Start the service.

sudo systemctl enable amuleweb

 

Enable the to run on boot.

sudo systemctl enable amuleweb

 

Use aMule

Default port is 4711 unless it has been changed manually. Change 192.168.0.100 to the actual IP address of the server. Access aMule via its web interface on 192.168.0.100:4711 and configure it from the settings page.

 

Backup aMule

The entire system directory can be backed up which would include finished and partial downloads as well as configuration, logs etc… Alternatively if downloads do not need to be preserved only the configuration file can be backed up.

 

Copy the entire system directory.

sudo cp -R /var/lib/amule/.aMule /mnt/backup/

 

Copy the configuration file.

sudo cp /var/lib/amule/.aMule/amule.conf /mnt/backup/.aMule/

 

Restore aMule

Stop the daemon service.

sudo systemctl stop amuled

 

Remove the old system directory.

sudo rm -Rd /var/lib/amule/.aMule

 

Copy the backed up system directory.

sudo cp -R /mnt/backup/.aMule /var/lib/amule/

 

Copy only the configuration file.

sudo cp /mnt/backup/.aMule/amule.conf /var/lib/amule/.aMule/

dom