Vi capita spesso di utilizzare il protocollo BitTorrent per scaricare file (come le ISO di Linux Ubuntu), e non volete lasciare acceso il PC per ore o giorni, per risparmiare corrente elettrica e non sentire rumore di ventole la notte? In questa breve guida vediamo come trasformare il vostro Raspberry Pi in una economica e silenziosa torrent box utilizzando il pacchetto Transmission, comandabile da remoto da un qualsiasi browser sulla rete domestica.
Cosa ci serve:
- Un Raspberry Pi (uso il model B)
- Un alimentatore con uscita microUSB che eroghi almeno 1.2A
- Una card SD da almeno 4GB in classe 4+ per il sistema operativo
- (Consigliato) Un HD esterno o una chiavetta USB capiente per contenere i download
- Un cavo ethernet per collegare il Pi alla rete locale/internet
Tempo necessario: 10 minuti se abbiamo già una installazione funzionante di Raspbian.
Installazione di base
Il sistema operativo che uso e’ Raspbian. Potete scaricarlo dalla sezione downloads del sito ufficiale del Pi, e installarlo seguendo questa guida. Io ho usato la versione 2014-06-30, ma vanno benissimo anche versioni piu’ vecchie se lo avete gia’ installato.
In breve:
- Creo la card SD con il sistema operativo usando win32diskimager (o un tool equivalente sotto linux/OsX);
- al primo avvio, cerco l’indirizzo IP del raspberry (di solito tramite la pagina di configurazione del router, oppure usando un tool di analisi della rete locale) e faccio il login via SSH, che sulle versioni recenti di Raspbian è attivato di default (quindi non serve collegare monitor e tastiera solo per abilitarlo);
- $ sudo raspi-config per espandere il filesystem sull’intera SD, settare la timezone e altre preferenze;
- monto l’HD esterno o la penna USB su cui salvare i download (per questa guida si suppone che il disco esterno sia montato dentro la directory /mnt/usbhdd/);
- (opzionale) configuro samba per poter vedere il disco esterno dagli altri computer sulla rete locale.
Installazione di transmission
Una volta avviato il Raspberry, passo alla directory su cui è montato il disco esterno (HD o chiavetta che sia) e via SSH creo le cartelle dentro cui salvare i download completati:
$ cd /mnt/usbhdd
$ mkdir downloads
$ sudo chmod 777 downloads
Il terzo comando fornisce i permessi in scrittura sulla cartella a tutti gli utenti del sistema, compreso quello sotto cui girerà transmission.
Rinfresco il database dei pacchetti di apt e installo transmission-daemon:
$ sudo apt-get update
$ sudo apt-get install transmission-daemon
Ora transmission è installato e funzionante, ma va configurato secondo le nostre esigenze. Per modificare il file di configurazione, devo prima fermare il demone:
$ sudo /etc/init.d/transmission-daemon stop
Poi effettuare una copia di backup del file di configurazione originale, nel caso qualcosa andasse storto…
$ sudo cp /etc/transmission-daemon/settings.json /etc/transmission-daemon/settings.json.original
… e a questo punto posso aprire il file di configurazione con nano e andare a modificare le voci che ci interessano:
$ sudo nano /etc/transmission-daemon/settings.json
E’ da notare che nonostante le voci nel file siano moltissime, non e’ necessario modificare tutto ora tramite nano: ad esempio, i limiti di banda per download e upload possono essere impostati in seguito dall’interfaccia web. Per ora limitiamoci alle impostazioni fondamentali, ovvero le directory di download e i parametri di accesso all’interfaccia web stessa:
“download-dir”: “/mnt/usbhdd/downloads”,
…
“incomplete-dir”: “/mnt/usbhdd/downloads”,
“incomplete-dir-enabled”: true,
…
“rpc-authentication-required”: true,
“rpc-bind-address”: “0.0.0.0”,
“rpc-enabled”: true,
“rpc-password”: “LA_MIA_PASSWORD“,
“rpc-port”: 9091,
“rpc-url”: “/transmission/”,
“rpc-username”: “IL_MIO_USERNAME“,
“rpc-whitelist”: “192.168.0.*”,
“rpc-whitelist-enabled”: true,
…
Il blocco di linee “rpc-xxx” è quello corrispondente all’interfaccia web, assicuratevi di inserire una password e un username che dovrete poi usare per accedervi. La password verrà automaticamente criptata (con md5) al primo riavvio del demone. La riga “rpc-whitelist”: “192.168.0.*” limita l’accesso ai soli dispositivi o computer che si trovano sulla stessa rete locale del Raspberry: nel caso usiate una subnet diversa dalla 192.168.0.* basta modificare la maschera (ad esempio se avete IP del tipo 192.168.1.*).
Salvo ed esco da nano con ctrl-x, confermo la sovrascrittura con Y e invio, e riavvio il demone:
$ sudo /etc/init.d/transmission-daemon start
Se tutto è a posto, transmission dovrebbe avviarsi e dopo pochi secondi rendere disponibile l’interfaccia web, a cui si accede da un qualunque browser all’indirizzo http://IP_DEL_RASPBERRY:9091 (io ad esempio la trovo a http://192.168.0.9:9091 ). Inserendo nome e password come da file di configurazione, vengono visualizzati i download in corso, una fila di icone per gestirli in alto, e una per le impostazioni in basso.
La prima icona in alto a sinistra permette di caricare un file .torrent per avviare un download, o ancora meglio di incollare un indirizzo magnet:// in modo da non dover scaricare e salvare il file .torrent stesso.
In basso, la seconda icona (chiave inglese) apre la finestra delle impostazioni, da cui si possono impostare i limiti di banda in down e up, dei limiti alternativi (piu’ bassi) per le fasce in cui si ha bisogno della banda per altre operazioni, e una fascia oraria in cui tali limiti alternativi si attivano automaticamente (si possono attivare a piacimento anche con l’icona tartaruga in basso). Nella scheda network è anche possibile attivare il port forwarding (se il vostro router lo supporta) per velocizzare le connessioni con i peer.
Il demone si riavvia da solo a ogni avvio del Raspberry. I comandi per fermarlo e riavviarlo manualmente sono:
$ sudo /etc/init.d/transmission-daemon stop
$ sudo /etc/init.d/transmission-daemon start
Una volta completato il download, il modo più pratico per accedere ai file è quello di condividere la cartella downloads (o l’intero disco esterno) sulla rete locale tramite samba, e sfogliare i file direttamente dal vostro PC.
E ora godetevi la vostra torrent box realizzata con un Raspberry Pi, a consumo praticamente nullo, always on e silenziosa. Alla prossima guida!
Pingback: Scaricare file torrent con Raspberry Pi e Transmission | Blog & Guide
Ha funzionato tutto alla prima! Grazie.
Ale