
aMule è la versione per Linux di eMule, il client per le reti eD2k e Kad. Sul Raspberry Pi lo faccio girare senza interfaccia grafica, come servizio sempre acceso (amuled), e lo comando dal browser con un’interfaccia web che ho rivisto per renderla più comoda anche dal telefono e che metto a disposizione in fondo a questo articolo.
Cosa serve
- Raspberry Pi con Raspberry Pi OS (Debian 12) e IP fisso
- spazio su disco per i download
- accesso SSH al Raspberry
Usa aMule solo per contenuti che hai il diritto di scaricare e condividere.
1. Le cartelle
mkdir -p ~/downloads/amule/{temp,incoming}
temp contiene i file in corso di scaricamento, incoming quelli completati.
2. Installazione
sudo apt update
sudo apt install amule-daemon amule-utils
amule-daemon contiene il servizio amuled e il server web amuleweb; amule-utils aggiunge alcuni strumenti da riga di comando, come amulecmd.
3. Primo avvio
Lancia aMule una volta, solo per fargli creare la cartella di configurazione ~/.aMule:
amuled
Si chiude subito con questo errore, ed è normale:
ERROR: aMule daemon cannot be used when external connections are disabled.
4. La password
Nella configurazione aMule non vuole la password in chiaro ma la sua impronta MD5. Calcolala così, mettendo la password che vuoi usare per l’interfaccia web:
echo -n 'LA_TUA_PASSWORD' | md5sum | cut -d ' ' -f 1
Il risultato è una stringa di 32 caratteri: tienila da parte per il passo successivo.
5. Configurazione
nano ~/.aMule/amule.conf
Il file è diviso in sezioni, con il nome tra parentesi quadre. Cerca queste voci e cambiale così, mettendo il tuo nome utente nei percorsi e l’impronta della password al posto di IMPRONTA_MD5:
[eMule]
Nick=NOME_A_SCELTA
MaxUpload=12
MaxDownload=36
Port=4662
UDPPort=4672
AddServerListFromServer=1
AddServerListFromClient=1
AutoConnectStaticOnly=1
TempDir=/home/TUO_UTENTE/downloads/amule/temp
IncomingDir=/home/TUO_UTENTE/downloads/amule/incoming
MinFreeDiskSpace=100
IPFilterURL=
[ExternalConnect]
AcceptExternalConnections=1
ECPassword=IMPRONTA_MD5
[WebServer]
Enabled=1
Password=IMPRONTA_MD5
Port=4711
Template=NOME_TEMPLATE
MaxUploadeMaxDownloadsono i limiti di banda in kB/s: adattali alla tua connessione (0 vuol dire nessun limite).Port(TCP) eUDPPortsono le porte per gli altri utenti. Se le apri sul router verso l’IP del Raspberry, ottieni l’ID alto e scarichi più velocemente.AutoConnectStaticOnly=1fa collegare aMule solo ai server della tua lista di server fidati (vedi il passo 8).MinFreeDiskSpaceè lo spazio minimo, in MB, che aMule lascia libero sul disco.IPFilterURLresta vuoto: la lista degli indirizzi da bloccare la aggiorno con uno script a parte (passo 9).Port=4711nella sezione[WebServer]è la porta dell’interfaccia web, che non va aperta sul router.Templateè il nome dell’interfaccia web, che installi al passo 6.
aMule riscrive questo file quando si chiude: modificalo sempre con il servizio fermo.
6. L’interfaccia web
L’interfaccia predefinita di aMule è piuttosto datata. La mia è una versione rivista di AmuleWebUI-Reloaded di Matteo Ragni.
[DA COMPLETARE: link per scaricarla e breve descrizione delle modifiche]
Le interfacce di aMule stanno in /usr/share/amule/webserver, una cartella per ciascuna. Scarica l’archivio e copia la cartella lì:
cd /tmp
wget LINK_ARCHIVIO
unzip NOME_ARCHIVIO.zip
sudo cp -r NOME_TEMPLATE /usr/share/amule/webserver/
Il nome della cartella deve essere uguale al valore di Template nella configurazione.
7. Avvio come servizio
Indica al servizio con quale utente girare:
sudo nano /etc/default/amule-daemon
AMULED_USER="TUO_UTENTE"
AMULED_HOME="/home/TUO_UTENTE"
Poi abilitalo all’avvio e fallo partire:
sudo systemctl enable amule-daemon
sudo systemctl start amule-daemon
systemctl status amule-daemon
Con Enabled=1 nella sezione [WebServer], il servizio avvia da solo anche l’interfaccia web. Aprila dal browser all’indirizzo http://IP_DEL_RASPBERRY:4711 ed entra con la password scelta al passo 4.
8. Server e nodi
Per collegarsi alle reti aMule usa due file in ~/.aMule: staticservers.dat, la lista dei server fidati, e nodes.dat, i punti di ingresso della rete Kad.
Se arrivi da un’altra installazione di aMule o eMule, ferma il servizio e copia nella nuova ~/.aMule questi file:
staticservers.datenodes.dat;clients.met,known.meteknown2_64.met, per conservare statistiche e crediti;ipfilter.dat, se vuoi avere subito la lista degli indirizzi filtrati.
I file già scaricati vanno invece copiati in ~/downloads/amule/incoming. Poi riavvia il servizio.
9. Manutenzione automatica
[DA COMPLETARE con gli script check-amule.sh e restart-amule.sh]
aMule, dopo giorni di funzionamento, tende a occupare sempre più memoria. Un riavvio notturno risolve. Apri il crontab di root:
sudo crontab -e
e aggiungi questa riga, che lo riavvia ogni notte alle 4:
0 4 * * * systemctl restart amule-daemon
Note
- Nel settembre 2026 è uscita la versione 3.1 di aMule, che introduce una nuova interfaccia web e considera superato
amuleweb, destinato a sparire nelle versioni future. La versione 3 però non è nei pacchetti né di Debian 12 né di Debian 13 (Trixie), e quindi neanche di Raspberry Pi OS: arriverà con la versione successiva di Debian. Fino ad allora si installa la 2.3, quella usata in questa guida. - Riferimenti: il README di Debian per amule-daemon e il progetto AmuleWebUI-Reloaded.