La mia soluzione: Raspberry Pi e Transmission

@fa-clock-o@ tempo: 20 minuti

@fa-star@ difficoltà : media

@fa-wrench@ abilità  consigliata: uso del terminale

@fa-quote-left@Perchè seguire questa guida

In questa guida vi illustrerò con i passaggi più semplici come utilizzare il nostro incredibile Raspberry Pi per scaricare torrent da internet, tutto comodamente controllato dal vostro cellulare o tablet (o da qualsiasi pc) e tutto disponible sulla vostra rete locale.
E' possibile utilizzare un Raspberry Pi apposito o uno già  configurato. Questa guida si intende come proseguimento della mia guida: "Il vostro nuovo Mediacenter", l'obiettivo è scaricare film e guardarli dallo stesso apparato, alla fine otterrete questo risultato:

  • Download Center. Scaricare file da Torrent.
  • Mediacenter. Vedere i Film, Serie TV, foto e ascoltare Musica.
  • File Server. Condividere i file sulla rete.
  • Backup & Sync. Backup e Sincronizzazione file sulla rete e in remoto.

Ho consultato vari tutorial per poter installare e configurare questa soluzione in modo completo e senza possibili problemi, nella mia guida cerco di guidarvi in TUTTI i passaggi necessari senza tralasciare nulla.

Inoltre sono disponibile ad aiutarvi, se avete dubbi o siete in difficoltà , lasciatemi un commento o scrivetemi una mail.

@fa-quote-left@Vale la pena?

PRO

  • @fa-linux@ Si basa su software (linux e Transmission) sempre aggiornati.
  • Può rimanere acceso 24/24 7/7.
  • Bassi consumi, non scalda, non fa rumore, vi dimenticherete che sia acceso.
  • Puo essere nascosto ovunque.

CONTRO

  • Non è una soluzione "out of the box", richiede installazione e configurazione, richiede l'uso di comandi da terminale (anche se semplici).
  • Assistenza limitata alle guide online e al sito ufficiale.

Fa per voi se...

  • Volete scaricare 24/24 senza consumare troppa energia e senza lasciare il vostro pc sempre acceso e connesso.

  • Non volete spendere soldi per un PC o server dedicato ma volete qualcosa che faccia il suo lavoro senza problemi.

Non fa per voi se...

  • Non volete avere a che fare con installazioni di software e personalizzazione.

  • Volete una soluzione "fatta e finita" che non abbia bisogno di essere configurata.

@fa-quote-left@Gestire il tutto

@fa-warning@ Per la gestione dei torrent, in questa guida utilizzo Remote Transmission per Android. E' possibile utilizzare anche un pc, un tablet, o un telefono, raggiungendo il webserver di Transmission dalla rete interna (es: http://192.168.1.13:9091), la porta di default di Transmission è 9091.

Scaricate le app dal Google Play Store.

Remote Transmission @fa-arrow-circle-down@

@fa-quote-left@Preparare il Raspberry Pi!

Se avete seguito la mia guida: "Il vostro nuovo Mediacenter" o avete già  installato sul Raspberry Pi una distribuzione Debian, il vostro sistema è già pronto, quindi passate alla prossima sezione della guida.

Se il vostro Raspberry Pi non ha ancora un sistema operativo e non volete utilizzarlo come Mediacenter o altro, ma solo per i backup, allora scaricate l'ultima versione di NOOBS, un installatore di sistemi operativi. Scompattate e copiate il contenuto dello .zip di NOOBS sulla SD (Importante! Scompattate tutto nella root della SD, non in una cartella). Ora inserite la memoria SD nel Raspberry e collegate il Raspberry alla TV con tastiera e mouse USB.

Una volta acceso il Raspberry verrà lanciato l'installer, scegliete Raspbian Light (senza desktop).

Terminate l'installazione:

  • 1) Accedete al sistema con utente pi - password raspberry
  • 2) Abilitate l'accesso SSH. utilizzate il comando sudo raspi-config selezionate "Interfacing Options/SSH", confermate e chiudete.
  • 3) Cambiate l' Hostname sempre con sudo raspi-config selezionate "Network/Hostname" questo sarà il nome del vostro server sulla rete.
  • 4) assegnate un indirizzo IP statico alla macchina. Potete farlo direttamente da PiHole oppure usando il comando ifconfig per trovare la vostra periferica di rete (interface, sostituite questo dato nel campo "interface" della configurazione), editate con sudo nano /etc/dhcpcd.conf la configurazione di rete, esempio (senza gli apici):

`#static IP configuration

interface enxb827ebdc0d1f
static ipaddress=192.168.1.15/24
static routers=192.168.1.1
static domain
name_servers=192.168.1.1`

Ctrl + x e y per salvare e chiudere il file.

  • 5) fate un reboot del sistema sudo reboot e continuate a seguire questa guida.

@fa-quote-left@Preparare il disco

Per scaricare i files vi servirà  un disco dove depositarli, è possibile utilizzare un disco connesso tramite USB.
Linux (sistema su cui si basa il Raspberry Pi) utilizza dischi formattati ext4 ma è in grado di leggere e scrivere su ogni file system.

Utilizzate un hard disk esterno NON auto-alimentato. Il Raspberry non può garantire abbastanza alimentazione per un disco esterno meccanico auto-alimentato, potete comunque usare una chiavetta USB capiente, un HDD non meccanico o utilizzare un HUB USB alimentato o un adattatore.

Considerate che:

  • Se scaricate files superiori a 4Gb non potete utilizzare un disco formattato fat32.
  • Se volete staccare il disco dal Raspberry per prestarlo ad amici, la compatibilità  più alta è data da NTFS.
  • Se il disco è accessibile solo attraverso la rete o da pc Linux, formattatelo in ext4, questa è la soluzione più performante.

Collegate il disco prima di procedere.

Connettetevi al Raspberry Pi via SSH.

Aprite un terminale (anche con il cellulare o tablet connesso in rete locale). Digitate:

ssh utente@INDIRIZZIOIP

esempio:

ssh pi@192.168.1.2

oppure:

ssh utente@NOMEHOSTSERVER.local

esempio:

ssh pi@raspberrypi.local

Disco di Download

Se non avete già  montato il disco, identificatelo, digitando:

sudo fdisk -l

ottenete il suo ID:

sudo blkid

Controllate nell'elenco e segnatevi le informazioni relative al vostro HardDisk. Attenzione al tipo di disco e al punto di mount.

/dev/sdb1: LABEL="My_Passport" UUID="4E1AEA7B1AEA6007" TYPE="ntfs"

Create la cartella del disco (scegliete voi il nome al posto di VOSTROHDD), in modo che all'avvio del Raspberry il disco venga montato. Usate gli stessi comandi, se vi necessita, per creare una cartella per il download dei torrent (es: /mnt/VOSTROHDD/torrents).

sudo mkdir -p /mnt/VOSTROHDD

sudo chmod 755 /mnt/VOSTROHDD

Modificate la tabella dei dischi con quanto creato fin ora.

sudo nano /etc/fstab

Aggiungete questa riga (ogni valore è separato da un TAB), facendo attenzione ai dati inseriti:

UUID={IL-TUO-UUID}    {/mnt/VOSTROHDD}               {tipo-file-system}    defaults,noatime 0       0

esempio:

UUID=4E1AEA7B1AEA6007 /mnt/VOSTROHDD   ntfs    defaults,noatime 0       0

In alternativa utilizzate l'indicazione /dev/sd? (esempio: sda1, sdb1) al posto dell'UUID del disco

esempio:

/dev/sda1 /mnt/VOSTROHDD   ntfs    defaults,noatime 0       0

NANO (uscite dall'editing con ctrl+x, salvate con "Y" e confermate con un invio).

@fa-quote-left@Installare e configurare Transmission

Installiamo Transmission! digitando:

sudo apt-get update

sudo apt-get install transmission-daemon

Questo APT ha i poteri della Super Mucca.

Il servizio si avvierà  da solo con utente debian-transmission, questo non creerà  problemi se avete un disco di appoggio formattato NTFS, se avete un disco ext seguite questi passaggi in modo da avere i file con permessi corretti (sostituite "osmc" se avete un utente diverso):

sudo service transmission-daemon stop

cambiamo utente sostituendo User=debian-transmission con User=osmc in

  • questo file digitando: sudo nano /lib/systemd/system/transmission-daemon.service
  • anche in questo altro file digitando: sudo nano /etc/init.d/transmission-daemon

eseguite il comando:
systemctl daemon-reload

Diamo i permessi corretti ai vari file di configurazione:

sudo chown osmc:osmc /etc/transmission-daemon/settings.json

sudo chown -R osmc:osmc /var/lib/transmission-daemon

Configurazione:

Ora configuriamo Transmission! digitate

se avete cambiato utente: sudo nano /home/osmc/.config/transmission-daemon/settings.json (se il file fosse vuoto avviate e stoppate il servizio per creare il file o scaricate il mio, trovate il link più sotto).

altrimenti: sudo nano /etc/transmission-daemon/settings.json

Assicuratevi di avere questi valori:
"rpc-authentication-required": false,

La carella dei downloads:
"download-dir": "/mnt/VOSTROHDD/torrents",

Chi si può connettere a Transmission? Impostate     una serie di IP, inserendola al posto di        "192.168.1.*",

"rpc-whitelist": "127.0.0.1,192.168.1.*",

"rpc-whitelist-enabled": true,

Nessun filtro:
"rpc-whitelist-enabled": false,

Per configurare una cartella di appoggio    (watchdir) per i .torrent, in modo che vengano aggiunti in automatico:
"watch-dir": "/PERCORSO/DELLA/CARTELLA",

"watch-dir-enabled": true,

"trash-original-torrent-files": true,

Nel caso vi serva il file "settings.json" potete scaricare la mia configurazione.

@fa-play@ facciamo partire transmission!

sudo service transmission-daemon start

@fa-quote-left@Ora siete UP and Running!

Avete fatto tutto. Potete iniziare a scaricare.

Per aggiungere .torrent:

  • Web Server Tansmission - collegatevi alla pagina web del Raspberry Pi IPaddress:9091 (es: http://192.168.1.10:9091). Fate l'upload di uno o piu file .torrent

  • Con l'app Remote Transmission per Android installata, vi basta scaricare un file .torrent e verrà  inviato al download!

  • Aggiungi un file .torrent alla cartella watchdir. Questa cartella può essere sincronizzata con Resilio Sync in modo da poter inviare e scaricare i ".torrent" in automatico anche da remoto.

@fa-cloud@ Guarda o ascolta i file multimediali direttamente dal Raspberry con il Mediacenter KODI! I download si trovano sotto "/mnt/VOSTROHDD/torrents", potete aggiungere il percorso al mediacenter che indicizzerà  i file appena vengono completati, segui la mia guida su come istallare KODI.

DuckieTV, con questo programma, disponibile per Windows/Mac e Linux, potete aggiungere le vostre Serie TV preferite ad una lista e sapere sempre quando è disponibile una nuova puntata. Si integra con Transmission manualmente o in automatico, non dovete collegarvi al Raspberry Pi o a nessun sito.

DuckieTV

DuckieTV Impostate i parametri del vostro Transmission:

  • Collegate PC e Raspberry Pi alla stessa rete.
  • Inserite l'url del vostro Raspberry Pi nel campo "Address" in "settings/transmission integration".
  • Deselezionate "user authentication".
  • Lasciate gli altri campi cosi come sono.

DuckieTV Transmission

Potete anche impostare il percorso dove salvare ogni singola serie e scaricare i sottotitoli. Se sul Raspberry Pi avete installato KODI una volta scaricata le serie basterà avviare una scansione dei contenuti e verranno automaticamente aggiunte alla libreria! Se non avete installato KODI seguite la mia guida.

@fa-quote-left@Condivisione Download

Potete accedere ai download tramite rete interna!

NB: Se NON avete seguito la mia guida precedente, potrebbe essere necessario installare manualmente i servizi SMB e FTP.

  • FTP (con un client FTP) IPaddress:21 (es: ftp://192.168.1.10:21)

  • SMB (pc Windows) \\IPaddress\ShareSMB (es: \\192.168.1.10\HDDShare)

  • SMB (linux, mac) smb://IPaddress/ (es: smb://192.168.1.10/)

Share SMB: Verrà  condivisa la cartella "home" del vostro Raspberry Pi (es: /home/osmc) per cambiare/aggiungere cartelle allo share SMB, collegatevi al Mediacenter via SSH e da terminale digitate: sudo nano /etc/samba/smb.conf all'interno del file aggiungete o sostituite le condivisioni:

[HDDShare] browsable = yes
read only = no
valid users = osmc
path = /mnt/VOSTROHDD
comment = OSMC Share on Raspbery Pi

Collegatevi via rete windows (cercate le vostre risorse dalla "Rete Windows") o collegatevi tramite indirizzo IP + nome della Share SMB. (seguendo il nostro esempio il nome della Share è "HDDShare").

Non vi rimane altro che cambiare password smb (quella di default nel nostro caso è "osmc")
sudo smbpasswd -a osmc

  • SSH (terminale) ssh pi@IPaddress (es: "ssh pi@192.168.1.10")

  • HTTP (file browser) http://IPaddress (es: " http://192.168.1.10") Per rendere visibili vostri file sulla rete locale via Browser, vedere i film e sentire la musica in streaming dalla rete locale installate e configurate h5ai.

  • NFS (Network File System Linux). Da terminale installate NFS:
    sudo apt-get install nfs-common nfs-server -y

Share NFS: Create la cartella condivisa oppure utilizzate una già  esistente, dovete impostare i permessi a 777 sudo chmod -R 777 /mnt/percorso_di_esempio aggiungiamo la share nella configurazione del server NFS: sudo nano /etc/exports aggiungete la seguente riga /mnt/percorso_di_esempio 192.168.1.0/24 *(rw,sync) L'indirizzo IP che vedete (o il range di IP) serve per restringere l'accesso alla share. Ora diamo in pasto a NFS la nuova configurazione sudo exportfs. Sui PC connessi montate il disco di rete tramite il seguente comando sudo mount 192.168.1.36:/mnt/percorso_di_esempio /mnt/percorso_di_esempio_destinazione oppure editate la tabella delle partizioni sudo nano /etc/fstab aggiungendo la seguente riga 192.168.1.36:/mnt/percorso_di_esempio /mnt/percorso_di_esempio_destinazione nfs rw 0 0

NOTA BENE: Sconsiglio l'utilizzo di SMB e DLNA. Richiedono l'utilizzo di servizi aggiuntivi, le prestazioni, sia di trasferimento dati che dell'hardware, saranno inferiori, utilizzate invece NFS. Per lo stesso motivo consiglio un disco formattato ext4 e non fat32 o NTFS.

@fa-quote-left@Cosa scaricare

Ovviamente vi consiglio di scaricare Torrent legali.

BitTorrent ha creato uno store BitTorrent Bundle dove vengono venduti Film e Musica da artisti indipendenti e non, io ho comprato questi Bundle (ma ce ne sono moltissimi anche gratis o iscrivendosi ad una mailing list):

Se siete interessati ai Videogiochi vi consiglio Humble Bundle, uno store da cui potete comprare giochi DRM free (ma anche Libri Fumetti e Audiolibri) in Bundle super convenienti, aiutando il prossimo. Poi potete scaricarli e sincronizzarli con Torrent sui vostri devices.

@fa-quote-left@Ora siete UP and Running!

Avete fatto tutto. Potete iniziare a utilizzare Trabsmission.

    username: pi
    password: raspberry

@fa-warning@Sicurezza

@fa-warning@Update! Ricordatevi che Linux è un sistema sicuro e rimane tale finchè manterrete kernel e i programmi aggiornati. Per effettuare un update del sistema digitate da terminale:

sudo apt-get update

sudo apt-get dist-upgrade

Liberare spazio cancellando i pacchetti di installazione:

sudo apt-get clean

Cambiare password:

passwd

Se avete problemi di permessi nel download dei file sul vostro Hard Disk:
sudo usermod -a -G VOSTROUTENTE debian-transmission

Riavviare il Raspberry Pi
sudo reboot

Spegnere il Raspberry Pi
sudo poweroff

Fermare/avviare manualmente il servizio Transmission
service transmission-daemon stop/start

lettura, scrittura e esecuzione del proprietario:
sudo chmod -R 700 /mnt/VOSTROHDD

lettura, scrittura e esecuzione del proprietario e del gruppo:
sudo chmod -R 770 /mnt/VOSTROHDD

lettura, scrittura ed esecuzione a tutti:
sudo chmod -R 777 /mnt/VOSTROHDD

STAY TUNA!

@fa-desktop@ per info, suggerimenti, richieste o se volete che "ci pensi io" scrivete ad: albi[chiocciola]twelvepurplepills.com

@fa-coffee@ Vi siete trovati bene con le mie guide e volete offrirmi una bella birra o un caffè? Fate una piccola donazione con Paypal!

Offrimi un caffè!

@fa-leaf@ Questo post è in continuo aggiornamento.

guida aggiornata il: 17 Gennaio 2018

Grazie a "pborman" che in questo post ha risolto il mio problema di utenza Transmission.