Ceci est une ancienne révision du document !
Philips MCW770 & TwonkyMediaServer sur Debian/Ubuntu
La mini chaine hifi MCW770 de Philips permet une lecture via wifi de vos titres présents sur votre ordinateur, au moyen d'un dongle fournit. La suite logicielle (driver+media manager) fournis par Philips est destinée à winXP, ce qui convient très bien aux utilisateurs de cet OS, sur un bon pc de bureau. Cependant, winXP peut se réveler lourd et peu flexible pour des petites configurations utilisées pour l'occasion uniquement comme media serveur (d'autant plus que le media manager - PMM - fourni n'est pas des plus performants), pour qui voudrait dépoussierer et remettre au goût du jour une vieille machine.
Cette page a pour but d'expliquer la démarche globale permettant de faire fonctionner la mini chaine Philips MCW770 avec un serveur Twonky, le tout sur une unité centrale aux performances limitées. Les opérations suivantes ont été effectuées sur Debian Testing ("Squeeze") et devraient être très proches de celles à employer sur Ubuntu. N'hésitez pas à éditer le sujet pour indiquer le fonctionnement, ou l'échec des manipulations sur votre version/distribution.
Le serveur ainsi créé a été testé et est fonctionnel sur un vieux Dell Optiplex G1 166MHz/256Mb SDRAM.
Pré-requis matériels
Munissez vous d'un pc sur lequel est installé winXP, vous en aurez besoin par la suite pour configurer la partie chaine hifi à l'aide des applications livrées sur le cd Philips.
Si vous désirez installer cette configuration sur votre pc de bureau déjà équipé d'une Debian/Ubuntu, passez directement à la 3e partie.
Sinon, avant de vous lancer dans les installations, vérifiez le branchement correct de votre/vos disques durs, lecteurs externes, un clavier et une souris (pour éviter les blocages éventuels au démarrage) et un écran (à moins que vous n'utilisiez une méthode de "preseed" à l'installation).
Installation du système de base
Récupération et installation de Debian/Ubuntu
Partant du principe que vous allez dedier une vieille unité centrale à la tâche de media manager, il vous faut télécharger une distribution à installer.
Pour Debian, rendez-vous directement sur la plateforme de téléchargement à cette adresse.
Pour Ubuntu, rendez-vous à cette adresse.
Selon le support que vous choisirez, vous pourrez graver cette iso (ne prenez que le cd1) sur un cd, ou la mettre sur une clé USB…(au moyen de UnetBootIn par exemple)
A l'installation, répondez aux questions et installez uniquement une version de base, sans interface graphique. Une fois l'installation terminée, redémarrez votre ordinateur pour finaliser.
Gestion des dépôts
Si vous désirez connecter votre serveur à internet afin de lui faire quelques mises à jour régulièrement, un petit tour dans /etc/apt/sources.list s'impose, afin d'y ajouter les dépôts de votre choix.
debian-ms:~#vi /etc/apt/sources.list
Pour Ubuntu, vous pouvez vous référer à cette page. Sinon un petit tour par Google vous les donnera tout autant…
Montage des différents disques
Si vous possédez plusieurs disques durs dans votre serveur, il va vous falloir modifier le fichier /etc/fstab afin qu'ils soient montés automatiquement au démarrage. Par exemple, vous pouvez installer Debian/Ubuntu sur un petit disque dur de quelques Go et stocker vos musiques et autres données sur un plus gros disque dur de plusieurs dizaines/centaines de Go (attention tout de même, certains vieux pc ne vous reconnaitront pas forcément toutes, voire pas du tout, leurs capacités). Pour ceci :
debian-ms:~#vi /etc/fstab
Allez faire un tour à cette adresse si vous ne savez pas comment faire.
Ajout des applications nécessaires
Nous avons maintenant un système fonctionnel basique. Nous allons procéder à l'installation des différents éléments propres à notre serveur de musique.
Installation des pilotes du dongle wifi
Le dongle wifi fourni avec la mini chaine est un Zydas ZD1201.
Selon la disponibilité ou non d'une carte réseau filaire connectée au net sur votre machine, vous pouvez l'installer directement ou au moyen d'une clé USB. Avant toute chose, débranchez le dongle du serveur.
via clé USB
A l'aide d'un pc connecté à internet, téléchargez le firmware à cette adresse, décompressez le et mettez le sur votre clé USB. Branchez votre clé USB sur votre serveur.
A l'aide de la commande :
debian-ms:~#fdisk -l
regardez où se trouve votre clé, et montez là:
debian-ms:~#mkdir /media/usbkey debian-ms:~#mount /dev/sda1 /media/usbkey \\ (si votre clé se trouve en /dev/sda1)
Copiez le firmware:
debian-ms:~#cp -v /media/usbkey/*.fw /lib/firmware
Installez le package wireless-tools: (le package se trouve sur l'iso)
debian-ms:~#apt-get update debian-ms:~#apt-get install wireless-tools
Connectez le dongle au serveur. Le module devrait être chargé tout seul. Vous pouvez cependant le charger manuellement à l'aide de :
debian-ms:~#modprobe zd1201
Vérifiez que votre dongle est reconnu (wlan0 chez moi):
debian-ms:~#ifconfig
via ethernet
Si votre machine a une carte ethernet reconnue, branchez le câble RJ45, activez l'interface:
debian-ms:~#ifconfig eth0 up \\ (si votre carte est reconnue en eth0)
Si votre réseau utilise DHCP: (sinon allez configurer votre interface dans /etc/network/interfaces)
debian-ms:~#dhclient eth0
Récupérez le firmware:
debian-ms:~#wget 'http://sourceforge.net/projects/linux-lc100020/files/%28NEW%29%20zd1201%20driver/zd1201-0.14-fw.tar.gz/download'
Décompressez le et copiez le:
debian-ms:~#tar xvf zd1201-0.14-fw.tar.gz debian-ms:~#cp -v zd1201-0.14-fw/*.fw /lib/firmware
Installez le package wireless-tools: (le package se trouve sur l'iso)
debian-ms:~#apt-get update debian-ms:~#apt-get install wireless-tools
Connectez le dongle au serveur. Le module devrait être chargé tout seul. Vous pouvez cependant le charger manuellement à l'aide de :
debian-ms:~#modprobe zd1201
Vérifiez que votre dongle est reconnu (wlan0 chez moi):
debian-ms:~#ifconfig
Mise en place d'un serveur ssh
Si votre machine dispose d'une carte ethernet et que dorénavant vous voulez la gérer à partir d'un autre pc, vous pouvez passer par ssh. Cela vous permettra d'enlever l'écran que vous avez éventuellement utilisé pour effectuer les étapes précédentes. Pour ce faire, installez openssh-server sur votre machine: (il peut être necessaire de rajouter des dépôts dans /etc/apt/sources.list)
debian-ms:~#apt-get install openssh-server
J'ai choisi de mettre mes connexions en IP fixe, ce qui me donne cette conf sur la machine: (à modifier selon votre convenance)
debian-ms:~#vi /etc/network/interfaces
#/etc/network/interfaces auto l0 iface lo inet loopback auto eth0 iface eth0 inet static address 192.168.3.56 \\IP de eth0 sur le serveur netmask 255.255.255.0 network 192.168.3.0 broadcast 192.168.3.255 gateway 192.168.3.55 \\IP de la passerelle = du pc qui gèrera le serveur
Voilà qui est fait côté machine, si tout se passe bien vous n'aurez plus besoin de votre écran à partir de maintenant. Paramétrez la carte réseau filaire du "pc maitre" de manière réciproque à celle du serveur. Puis accédez à votre serveur via ssh par :
debhub:~#ssh root@192.168.3.56 \\si vous voulez être sous la session 'root' du serveur OU debhub:~#ssh <user>@192.168.3.56 \\si vous voulez être sous la session de l'utilisateur <user>
A tout moment, vous pourrez mettre fin à la connexion ssh par la commande:
debhub:~#logout
Par la suite, quand le serveur de musique sera paramétré, vous pourrez y ajouter vos musiques via ssh par la commande 'scp'. Pour plus d'infos sur les possibilités offertes par scp, rendez-vous ici.
Paramétrage d'un autologin
Si vous voulez bypasser la rentrée du mot de passe root (déconseillé) ou utilisateur au démarrage du serveur, vous pouvez suivre la procédure suivante: Installez mingetty:
debian-ms:~#apt-get install mingetty
Editez le fichier /etc/inittab avec vi,vim ou nano selon ce que vous avez installé sur votre serveur:
debian-ms:~#vi /etc/inittab
Cherchez la ligne:
1:2345:respawn:/sbin/getty 38400 tty1
et remplacez la par:
1:2345:respawn:/sbin/mingetty --autologin <username> --noclear tty1
où <username> est l'utilisateur (ou 'root', mais déconseillé!!) à autologger. Redémarrez le serveur pour appliquer les changements:
debian-ms:~#reboot
Configuration de la connexion
Maintenant que le système de base est installé sur le serveur, que les interfaces sont reconnues, il convient de mettre en place la connexion serveur-chaine hifi.
Partie chaine hifi
Pour cette partie, vous allez devoir vous munir du cd Philips fournit avec la chaine hifi. Insérez le dans un pc muni de winXP.
Au lancement, il vous demande votre langue puis vous affiche un menu.
Allez dans la partie "Installation Personnalisée".
Suivez les instructions d'installation du driver du dongle. (débranchez-le au préalable, si toutefois il était connecté)
Une fois ceci fait, retournez dans le menu d'installation personnalisée, et lancer la configuration du réseau.
Cochez en bas la case "Ne pas effectuer la configuration automatique". Il vous demande d'appuyer 5s sur le bouton PCLINK de la chaine…Exécutez.
Editez le profil "STANDARD" qui apparait sur la droite de l'écran. Mettez-y les paramètres de votre choix. (Prenez soin de les noter quelquepart, ils nous seront nécessaires par la suite).
Validez afin de terminer la configuration de la chaine.
Vous pouvez maintenant désinstaller l'application qui a été installée sur votre winXP auparavant en passant par "Panneau de configuration"→"Ajout/Suppression de Programmes" (IEEE802.11bWLANUtility…)
Partie serveur
La configuration de votre serveur dépend de ce que vous avez spécifié à la chaine à l'étape précédente, et s'effectuera pour votre serveur dans /etc/network/interfaces. Pour accéder au serveur par ssh via votre "pc maitre":
debhub:~#ssh root@192.168.3.56
Si vous avez toujours votre écran branché au serveur, vous pouvez directement taper en console.
Ma configuration est la suivante:
ESSID : MCW770
IP : 192.168.4.4
Channel : 1
Mode : Ad-Hoc
Enc. : WEP
Key : 123456789A
Ce qui va me donner dans /etc/network/interfaces du serveur:
debian-ms:~#vim /etc/network/interfaces
#/etc/network/interfaces auto lo iface lo inet loopback #Ethernet pour connexion ssh auto eth0 address 192.168.3.56 netmask 255.255.255.0 network 192.168.3.0 broadcast 192.168.3.255 gateway 192.168.3.55 #Dongle wifi pour MCW770 auto wlan0 iface wlan0 inet static address 192.168.4.3 netmask 255.255.255.0 network 192.168.4.0 broadcast 192.168.4.255 gateway 192.168.4.4 wireless-essid MCW770 wireless-key 123456789A wireless-mode ad-hoc wireless-channel 1
Par la suite, il pourra vous être utile de vous créer un script du style :
#!/bin/sh ifconfig wlan0 down ifconfig wlan0 192.168.4.3 netmask 255.255.255.0 broadcast 192.168.4.255 up iwconfig wlan0 essid MCW770 key 123456789A mode ad-hoc channel 1
pour les éventuelles pertes de connexion quand vous travaillez avec ssh sur votre serveur (j'en ai assez souvent…bizarrement.problème d'utilisation des 2 interfaces en même temps??)
TwonkyMediaServer
Maintenant que nous avons une machine en état de fonctionner et de se connecter à la chaine hifi, il nous reste à installer le media server à proprement parler. Nous utiliserons ici TwonkyMediaServer. La version disponible est une version d'essai de 30j, période au delà de laquelle il vous faudra vous enregistrer. Vous pouvez soit récupérer un .zip (ce qui est détaillé ci-dessous), ou vous procurer une version en .sh, qu'il suffit d'éxécuter pour procéder à une installation automatique.
Installation
Allez sur le site de twonkyvision et récupérez la dernière version pour Linux, en .zip. Vous pouvez aussi passer par votre console:
debian-ms:~#wget http://www.twonkyvision.com/downloads/twonkymedia-i386-glibc-2.2.5-full-5.0.61-20090403.zip \\pour une architecture i386 debian-ms:~#apt-get install unzip \\est nécessaire pour décompresser l'archive .zip
Créez le dossier d'installation (pour les versions en .sh, /usr/local/twonkyvision est le répertoire par défaut):
debian-ms:~#mkdir /usr/local/twonkyvision
et décompressez dedans:
debian-ms:~#cp twonkymedia-i386-glibc-2.2.5-full-5.0.61-20090403.zip /usr/local/twonkyvision/ debian-ms:~#unzip twonkymedia-i386-glibc-2.2.5-full-5.0.61-20090403.zip
Vous vous retrouvez maintenant avec un serveur twonky sur votre machine.
Paramétrage
Lancement auto au démarrage du PC
Normalement, votre serveur twonky devrait se lancer automatiquement au démarrage grâce au script twonkymedia.sh placé dans /etc/init.d. Cependant, ne se lançant pas chez moi, j'ai édité ce fichier et dû modifier la ligne "WORKDIR1"…Pour ce faire, éditez le fichier :
debian-ms:~#vim /etc/init.d/twonkymedia.sh
Cherchez la ligne WORKDIR1 (cela devrait ressembler à cela):
WORKDIR1="/usr/local/twonkymedia" WORKDIR2="'dirname $0'" PIDFILE=/var/run/mediaserver.pid
Si comme dans cet extrait la variable "WORKDIR1" ne contient pas le dossier où est installé votre serveur twonky (/usr/local/twonkyvision chez moi), modifiez cette ligne pour le faire apparaître :
WORKDIR14="/usr/local/twonkyvision"
Configuration
Tous les fichiers de configuration de votre serveur twonky se trouvent dans /var/twonkymedia/. Pour configurer votre serveur comme bon vous semble; allez dans ce dossier et éditez le fichier twonkymedia-server.ini :
debian-ms:~#cd /var/twonkymedia debian-ms:~#vim twonkymedia-server.ini
Vous allez alors avoir accès à de nombreuses options paramétrables…Vous pouvez laisser la grande majorité d'entre elles à leur valeur par défaut. Je vais donc ici vous détailler celles qui peuveznt réellement vous servir. Pour régler la profondeur de recherche dans l'arbre de votre base de donnée, modifiez la valeur de "autotree" (par défaut:3)
#autotree autotree=3
Pour modifier la taille du cache utilisé par twonky, modifiez la variable "cachemaxsize" (vide par défaut, fonctionne très bien par défaut):
#cachemaxsize cachemaxsize=
Pour entrer votre clé d'enregistrement de votre produit twonky, modifiez la variable "cdkey":
# Registration key cdkey=votre_cle_twonky
Pour spécifier le dossier où se trouvent vos titres modifiez la variable "contentdir":
# Content Locations contentdir=+M|/media/dbase/
Le "+M" précise que le dossier contient de la musique. Le dossier est comme vous pouvez le voir sur "/media/dbase" chez moi, à modifier selon votre emplacement. Pour modifier le nom du serveur qui va apparaître sur votre chaine hifi, changez la variable "friendlyname":
# Server name friendlyname=MUSIC--DBASE
Pour indiquerà votre serveur l'IP qui lui est attribuée, modifiez la variable "ip":
# ip ip=192.168.4.3
Si vous voulez que le serveur scan régullièrement votre base de donnée de manière automatique, modifiez la variable "scantime" (par défaut:0, cad ne rescan jamais de manière automatique)
# Rescan in minutes scantime=0
Bien d'autres options vous sont proposées, vous pouvez détailler leur utilisation dans ce tutoriel…
Commandes utiles
Le serveur twonkymedia, une fois installé, vous offre quelques commandes et fonctions utiles à sa gestion et sa maintenance. Partant du principe que twonky est installé dans /usr/local/twonkyvision/ et que l'IP de votre serveur est 192.168.4.3, vous avez à votre disposition :
Démarrage du serveur twonky:
debian-ms:~#sh /usr/local/twonkyvision/twonkymedia start
Arrêt du serveur twonky:
debian-ms:~#sh /usr/local/twonkyvision/twonkymedia stop
Redémarrage du serveur twonky:
debian-ms:~#sh /usr/local/twonkyvision/twonkymedia restart
Rechargement du serveur twonky:
debian-ms:~#sh /usr/local/twonkyvision/twonkymedia reload
En ce qui concerne la base de donnée de vos titres… Rescan:
debian-ms:~#wget http://192.168.4.3:9000/rpc/rescan
Reconstruction de la base de donnée:
debian-ms:~#wget http://192.168.4.3:9000/rpc/rebuild
Si vous gérez votre serveur en console, il peut vous être utile de garder toutes ces commandes dans un/des scripts, afin d'éviter de tout retaper à chaque fois…quelques-uns sont proposés en bas de ce tutoriel, à reprendre tels quels ou à modifier selon votre configuration ou votre convenance. (vous pouvez éditer les scripts de cette page si vous avez des modifications à leur apporter, notamment en ce qui concerne leur écriture ou leur optimisation)
Autres petites améliorations
Vous trouverez dans cette partie quelques petits ajouts afin d'optimiser un peu votre installation et de vous faciliter la tâche dans sa gestion. Toute autre suggestion est la bienvenue, n'hésitez pas à modifier…
Réduction du temps d'attente du menu GRUB au démarrage
Si GRUB est installé sur votre machine, par défaut il va afficher le menu de sélection au démarrage et attendre un certain temps avant de lancer le serveur sur la sélection par défaut. Si vous voulez réduire ce temps d'attente, ouvrez le fichier de configuration de GRUB:
debian-ms:~#vi /boot/grub/menu.lst
Cherchez la ligne :
##timeout sec #Set a timeout, in SEC seconds, before automatically booting the default entry #(normally the first entry defined) timeout 5
et remplacer le "5" de l'exemple par le temps d'attente en secondes que vous désirez.
Ceci n'est qu'une des nombreuses options paramétrables de GRUB, vous pouvez modifier d'autres lignes de ce fichier afin que le démarrage se fasse conformément à ce que vous recherchez.