Librox blog

À deux, c’est mieux

Accueil > Informatique > RPI : pc multimedia + seedbox

RPI : pc multimedia + seedbox

vendredi 15 février 2013

Un raspberry pi ça coûte 30€. Ajoutez à ça une carte SD de 32G (30€ max), on arrive à 60€. Voici donc comment vous faire un PC multimédia de salon qui télécharge et partage en continu.

But recherché :

Avoir un boîtier branché à votre TV qui lit les contenus multimédia (film musique et photo) sur le réseau, sur son disque interne, sur internet (streaming), et qui télécharge et partage des fichiers en permanence (comme des distributions linux légales bien sûrs).

Avec quoi ?

Le but est de faire simple avec ce qui existe déjà. En l’occurrence, raspbmc est très simple : xbmc (le meilleur outil de lecture multimédia) sur raspian (debian wheezy pour raspberry pi). Le RPI peut-être alimenté par le port usb de la télé (économie d’une alimentation) mais on ne pourra pas l’utiliser en continu. Finalement il vaut mieux une alimentation micro usb récupérée bien entendu. Un chargeur de Samsung Galaxy S fera l’affaire. Pour télécommander notre RPI, on va utiliser la télécommande de la télé car elle est récente et gère le HDMI CEC qui permet de contrôler le RPI par la télé via HDMI. Sinon on peut utiliser son téléphone android ou iphone avec l’appli qui va bien.

On fait comment ?

Comme on est sous linux, on branche sa carte SD sur son PC et on ouvre un terminal en su (ou sudo) :

Il vous faut alors donner le nom de votre carte sd (mmcblk0 dans mon cas).
Le script va télécharger et installer un script d’installation sur la carte. S’ensuit 3 questions :

Would you like to setup your post-installation settings [ADVANCED] ?"
Yes
Would you like to install Raspbmc to a USB stick or an NFS share ?
Note that this still requires an SD card for booting.

No
Would you like to configure networking manually ? This is useful if you are configuring WiFi or a non-DHCP network
No (dhcp fera l’affaire pour le moment)

Une fois que vous avez ce message :
Raspbmc is now ready to finish setup on your Pi, please insert the SD card with an active internet connection
Retirez la carte SD et mettez la dans le RPI. Branchez une souris usb pour le début c’est plus simple. Evidemment, il faut le brancher au réseau et sur votre TV en HDMI. Démarrez l’engin.
Le téléchargement et le partitionnement/formatage et l’installation vont se faire tout seul, redémarrages compris.
Une fois OP, il vous demande de choisir votre langage :
Please choose your language choisissez la France (à l’inverse de Depardieu) et il reboot
C’est tout ce qu’il y a à faire dans xbmc. On a donc déjà un PC multimédia opérationnel. On peut lire un partage NFS sur le réseau local de façon assez intuitive.

Connection ssh

On se connecte en ssh sur l’engin :

mot de passe par defaut : raspberry
S’ensuit un interrogatoire :
Hi there ! You have logged into your Pi for the first time
Allow me to set up your timezone and keyboard settings
Please wait a few seconds...

J’ai choisi les 3 fr_FR disponibles dans la longue liste. Puis parmi les 3, le UTF8 par défaut.
Geographic area :
Europe
Time Zone :
Paris
Voilà, c’est fini pour l’interrogatoire.
On change le mot de passe car je n’arrive pas à écrire correctement raspberry :

Partie seedbox

On installe transmission-daemon :

The following NEW packages will be installed :
libminiupnpc5 libnatpmp1 minissdpd transmission-cli transmission-common transmission-daemon

série de warning je l’espère sans importance :
insserv : warning : script ’console-setup’ missing LSB tags and overrides
insserv : warning : script ’xinetd’ missing LSB tags and overrides
insserv : warning : script ’xbmc’ missing LSB tags and overrides
insserv : warning : script ’avahi-daemon’ missing LSB tags and overrides
insserv : warning : script ’cron’ missing LSB tags and overrides
insserv : warning : script ’udev’ missing LSB tags and overrides
insserv : warning : script ’dbus’ missing LSB tags and overrides
insserv : warning : script ’winbind’ missing LSB tags and overrides

Pour corriger ça, il faut mettre les bons tags dans les fichiers /etc/init.d/console-setup etc.. Mais on s’en fou si ça marche.
On ajoute le user pi au groupe debian-transmission :

On arrète le service transmission-daemon pour le paramétrer :

On lui dit que ce qu’il télécharge doit être en rw pour le user pi en remplaçant dans la ligne 65 "18" par "2" :
"umask" : 2,
On change le mot de passe ligne 48 :
"rpc-password" : "motdepasse",
Votre mot de passe sera crypté au prochain demarrage de transmission-daemon.
Ligne 52 on s’autorise à accéder à l’interface :
"rpc-whitelist" : "127.0.0.1,192.168.1.*",
On sort de l’éditeur :
Ctrl+x, Y, enter
Et voila le reste on le règlera depuis l’interface web.
On redémarre le service :

Et voilà.
on a fini de configurer le RPI.

Mode d’emploi

Connection à l’interface depuis un pc du réseau local :
Dans le navigateur tapez l’adresse :
http://192.168.1.94:9091/transmission/web/ (remplacez l’adresse IP bien entendu)
Nom d’utilisateur :
transmission
Mot de passe :
vous venez de le régler
On arrive la dessus :

Depuis cette interface on peut voir les statuts des téléchargements en cours et lancer des nouveaux téléchargements en fournissant des fichiers torrents ou des liens magnets.
Il est aussi possible sur linux d’utiliser le programme transgui plutôt que l’interface web.

Pour récupérer vos fichiers depuis le réseau local :
Avec gnome, rien de plus simple par ssh. Cliquez sur Se connecter à un serveur et remplissez comme suit : (ligne dossier : /var/lib/transmission-daemon/downloads/)

On vous demande votre mot de passe bien sûr et voila votre dossier de réception des téléchargements. Après installation, il vous reste 28G de libre, de quoi partager suffisamment.
Pas de superflu, juste ce qu’il faut. Installer un serveur NFS ? Franchement ça ne sert pas à grand chose (et ça n’a pas marché avec moi). Ne pas faire de apt-get upgrade car ça va tout casser apparemment.
Pour aller plus loin :
Surveillez les performances du RPI depuis le web