Subsonic – Ou comment monter son serveur de streaming audio

Par le dans . Marqué comme , , , , , avec 106 Commentaires

Subsonic – Ou comment monter son serveur de streaming audio

Subsonic était open source jusqu’en mai 2016 lorsque son développeur a décidé de fermer les sources. Si le projet vous intéresse, je vous conseille plutôt de vous diriger vers Libresonic, un fork open source communautaire de Subsonic.

Hop … aujourd’hui je vais vous parler d’un paquet dont Onii m’a parlé il y a quelques temps. Je n’ai jamais été fan des services de streaming audio du type Grooveshark, Spotify et autres Deezer, par contre j’écoute de la musique en permanence. Exemple, en écrivant ce billet, j’écoute un album d’un de mes groupes favoris « High Tone ». Problème … je ne suis pas sur ma machine principale et je n’ai pas ma bibliothèque musicale sous la main …

Alors comment faire ?! Avoir un disque dur dans son sac ?! Non trop lourd, trop fragile. Avoir une clef USB ?! Pourquoi pas, mais ça se {perd|oublie|casse|vole} facilement et maintenir sa bibliothèque à jour peut devenir rébarbatif sur du long terme.

La solution est très simple, en bon geek que je suis, j’ai décidé de monter mon propre serveur de streaming audio ! Plus besoin de transporter son matériel, il suffit d’une connexion à Internet, de son navigateur préféré ET/OU d’une application sur smartphone. Pour faire cela, je vais utiliser le paquet Subsonic et vous décrire comment installer le tout sur votre serveur le plus facilement possible.

Qu’est-ce qu’un serveur de streaming multimédias ?!

Avant de se lancer dans l’installation de notre serveur de streaming, il peut être intéressant de savoir un minimum dans quoi on se lance non ?
D’après Wikipédia, le streaming (stream pour « courant », « flux », « flot ») ou lecture en continu, désigne le fait de lire un flux audio ou vidéo à mesure qu’il est diffusé. Le streaming s’oppose ainsi à la diffusion par téléchargement de fichiers qui nécessite de récupérer l’ensemble des données d’un morceau ou d’un extrait vidéo avant de pouvoir l’écouter ou le regarder. Les données sont alors téléchargées en continu dans la mémoire vive (RAM) (ou ailleurs selon le type d’applications utilisées), sont analysées à la volée par l’ordinateur et rapidement transférées dans un lecteur multimédia (pour affichage) puis remplacées par de nouvelles données.

Nous allons dans la suite de cet article installer sur notre machine, un serveur de streaming audio et vidéo. Subsonic étant un serveur de médias Open Source et écrit en Java, celui-ci peut s’installer sur de nombreux systèmes d’exploitations comme Microsoft Windows, Mac OS X, Debian/Ubuntu, Red Hat/Fedora etc. Il est bon de savoir que du côté client, une application est disponible pour smartphone et autres tablettes sous Android et iOS. Pratique non ?

Installer Subsonic :

Installons notre serveur de streaming. Pour cela, il vous faudra tout de même posséder votre propre serveur (ou un PC qui peut rester chez vous allumé en permanence) et un accès privilégié du type « root » ou « sudo » pour administrer la machine.

Dans cet article, Subsonic sera installé et déployé sur un serveur tournant sur le système d’exploitation Debian Squeeze (alias Debian 6.0.4) maintenu à jour par mes soins, donc vous ne devriez pas rencontrer de problèmes particuliers concernant les dépendances de paquets ou autres.

C’est parti pour le téléchargement de notre fameux paquet :
– Si votre serveur possède une interface graphique (bouuuuuuh ^^), rendez-vous sur cette page pour télécharger la dernière version de Subsonic en fonction de votre OS : subsonic.org/pages/download.jsp

– Si vous avez accès à un shell, suivez les manipulations décrites ci-dessous afin de récupérer le .deb de Subsonic en vérifiant qu’il s’agisse bien de la dernière version disponible sur le site de l’éditeur (actuellement la version 4.6).

Nous allons créer un répertoire temporaire dans le « HOME » de notre utilisateur connecté pour y stocker le paquet :

mkdir Subsonic

On se déplace ensuite dans le répertoire que l’on vient de créer :

cd Subsonic

Et on télécharge le paquet de Subsonic :

wget http://sourceforge.net/projects/subsonic/files/subsonic/4.6/subsonic-4.6.deb/download

Une fois notre paquet .deb téléchargé, il nous faut installer une plate-forme Java sur notre machine.

Toujours sous Debian :

apt-get install openjdk-6-jre
Il est nécessaire de télécharger 47,2 Mo d'archives. Après dépaquetage, 136 Mo seront utilisés.
Voulez-vous continuer ? [Y/n/?]

Validez par Oui ou Yes à la question concernant l’installation de dépendances.

Si vous utilisez Rkhunter sur votre serveur, sachez qu’à partir de maintenant, vous recevrez des avertissements par mail vous signalant la présence du répertoire caché /etc/.java/. C’est normal, nous venons d’installer le paquet sur notre système. Il faudra alors ajouter ce répertoire à la whiteliste de Rkhunter dans le fichier /etc/rkhunter.conf afin que celui-ci vous laisse tranquille.

 

Représentation d'un paquet sous Debian
 

On renomme ensuite notre paquet :

mv download subsonic-4.6.deb

(la version 4.6 est à ce jour la dernière release disponible sur le site, mais pensez à vérifier si une mise à jour n’a pas été publiée entre temps)

Lançons ensuite l’installation du paquet :

dpkg -i subsonic-4.6.deb

Si vous obtenez le message suivant : Started Subsonic [PID XXXXX, /var/subsonic/subsonic_sh.log], félicitations, vous venez d’installer votre premier serveur de streaming ^^

Subsonic est maintenant accessible depuis les pages web suivantes :

  • http://VotreAdresseIP:4040
  • http://VotreSuperNomDeDomaine.fr:4040

Configurer son serveur aux petits oignons :

Avant toutes modifications ET/OU améliorations à apporter à Subsonic, il est important de noter où sont stockés les logs de notre serveur. Cela sera particulièrement utile en cas de problème.
Vous les trouverez donc en suivant ces chemins :

  • /var/subsonic/subsonic_sh.log
  • /var/subsonic/subsonic.log

Subsonic est maintenant accessible via le port 4040 qui est donc le port d’écoute par défaut de votre serveur.
Si comme moi, vous avez fermé TOUS les ports de votre serveur pour des raisons de sécurité, sachez que Subsonic ne sera pas accessible sans une petite manipulation de votre part.

Si cela est nécessaire, ouvrez le port 4040 dans iptables avec la commande suivante :

iptables -t filter --append INPUT -p tcp --dport 4040 -j ACCEPT

Personnellement, je n’aime pas laisser dans les configurations de mes applications les ports utilisés par défaut, pour des questions de {sécurité|paranoïa}.
Je vous propose donc 2 choses :

  • La première, modifier le port d’écoute par défaut de Subsonic
  • La seconde, utiliser un serveur web pour obtenir des URLs personnalisées pour Subsonic. (Exemple : http://MonMotClef.MonNomDeDomaine.fr

Mais avant toute chose, nous allons procéder aux premières étapes de la configuration classique de Subsonic :

Page d'accueil de Subsonic suite à installation récente
 

Modifier les identifiants de connexion par défaut :

 

Consigne N°1 pour paramétrer Subsonic
 

Pour cela, rendez vous à l’adresse http://VotreAdresseIP:4040 et connectez vous avec les informations suivantes :
– Username : admin
– Password : admin

Renseignez ensuite un mot de passe « fort » afin de protéger le compte administrateur du serveur, votre adresse de messagerie et sauvegardez les modifications.

Création des répertoires utilisés par Subsonic :

 

Consigne N°2 pour paramétrer Subsonic
 

Pour que Subsonic puisse aller lire et « streamer » votre musique, il va falloir créer des répertoires qu’on lui donnera en paramètres via son interface.

Dans mon cas, j’ai décidé de créer un répertoire « Musique » que je stockerai dans le dossier Subsonic dans le HOME de mon utilisateur.
Ce répertoire sera donc accessible via le chemin suivant : /home/Subsonic/Musique/.

La commande est la suivante :

mkdir /home/Subsonic/Musique

Nous allons également créer les répertoires « Podcats » et « Playlists » qui seront utiles à Subsonic pour son bon fonctionnement.

mkdir /home/Subsonic/Podcast
mkdir /home/Subsonic/playlists

Allez ensuite dans l’interface de configuration de Subsonic et cliquez sur l’étape 2 accessible depuis la page d’accueil ou rendez-vous sur les pages suivantes :

  • Paramètres > Dossier de musique pour indiquer l’emplacement de votre dossier de musique, ici /home/Subsonic/Musique
  • Paramètres > Podcast pour indiquer l’emplacement de votre dossier de Podcats, ici /home/Subsonic/Podcast
  • Paramètres > Général pour indiquer l’emplacement de votre dossier qui contiendra les playlists que vous créerez, ici /home/Subsonic/playlists

En ce qui concerne l’ensemble des paramètres disponibles via l’interface d’administration, je vous laisse en faire le tour, mais sachez qu’il est possible de :

  • Administrer des utilisateurs
  • Changer le thème (skins) de Subsonic
  • Gérer les paramètres réseaux
  • Gérer les paramètres d’encodages des fichiers
  • De s’abonner à des Podcasts ou à des radios/TV disponibles sur Internet
  • Il existe encore de nombreuses options, n’hésitez pas à vous promener dans les menus pour les découvrir :)

Configurer les réglages réseaux :

 

Consigne N°2 pour paramétrer Subsonic
 

Cette partie de l’administration de Subsonic vous permet de définir comment accéder à votre serveur Subsonic depuis Internet. En cas de problème, il est possible de consulter cette page qui regorge d’informations utiles : Guide démarrage de Subsonic.

Il est également possible de configurer automatiquement un routeur pour autoriser les connexions entrantes vers Subsonic (transit par port UPnP), mais je ne m’occuperai pas de cela dans cet article car je ne pratique pas l’auto-hébergement (c’est à dire à domicile) et je n’ai donc pas accès aux routeurs de l’infrastructure.

Cette page propose aussi d’accéder simplement à son serveur Subsonic en paramétrant une adresse simple à retenir du type http://NomDeSeveur.subsonic.org, mais comme je vous l’ai dit plus haut, nous allons nous occuper de cela dans le prochain paragraphe.

Configuration avancée de Subsonic (ou le moment que l’on attendait tous) :

Modification du port utilisé par défaut :

Par défaut, Subsonic utilise le port 4040, nous allons donc modifier celui-ci par le port que vous souhaitez, en faisant bien entendu attention à ce qu’il ne soit pas utilisé par un autre service. Par exemple, si vous avez un serveur Web comme Apache ou NGinx qui tourne, évitez de configurer le port 80 !

Pour cela, il faut éditer le fichier de configuration de Subsonic :

nano /etc/default/subsonic

Pour y ajouter la ligne suivante :

SUBSONIC_ARGS="--port=NuméroDuPort"

Et n’oubliez pas d’ouvrir le port que vous allez utiliser dans IPtables :

iptables -t filter --append INPUT -p tcp --dport NuméroDuPort -j ACCEPT

Et donc de refermer le port 4040 qui ne sera alors plus utilisé par Subsonic. (qui a dit que j’étais paranoïaque ?!)

iptables -t filter --delete INPUT -p tcp --dport 4040 -j ACCEPT

On redémarre ensuite le service :

/etc/init.d/subsonic restart

Puis on vérifie que Subsonic est maintenant bien accessible depuis le nouveau port configuré : http://VotreAdresseIP:7474 (par exemple).

Personnaliser l’adresse d’accès à son serveur Subsonic :

Pour avoir une adresse du type http://MotClef.MonNomDeDomaine.fr pour accéder à Subsonic, il va falloir utiliser notre serveur HTTP comme un Proxy.

Il faut alors activer les modules proxy et proxy_http :

a2enmod proxy
a2enmod proxy_http

Maintenant il faut créer un nouveau vhost (ou virtual host) :

cd /etc/apache2/sites-available
nano MonSuperVhostPourSubsonic

Dans lequel vous ajouterez les lignes suivantes

<VirtualHost *:80>
        ServerAdmin webmaster@MonNomDeDomaine.fr
        ServerName MonMotClef.MonNomDeDomaine.fr
        ServerAlias www.MonMotClef.MonNomDeDomaine.fr MonMotClef.MonNomDeDomaine.fr
        # Vous pouvez renseigner ici les chemins de votre choix pour le stockage des logs
        ErrorLog /var/log/apache2/MonMotClef.MonNomDeDomaine.fr-error.log
        CustomLog /var/log/apache2/MonMotClef.MonNomDeDomaine.fr-access.log combined
        DocumentRoot /var/subsonic
        <Directory /var/subsonic>
                Options Indexes ExecCGI FollowSymLinks
                Order allow,deny
                Allow from all
                AllowOverride all
        </Directory>
        # Permet de masquer la signature renvoyée par Apache
        ServerSignature Off

# Directives concernant le Proxy que nous venons d'activer sur notre serveur
<IfModule mod_proxy_http.c>
    ProxyRequests Off
    ProxyPreserveHost Off
    ProxyPass / http://MonMotClef.MonNomDeDomaine.fr:MonPort/
    ProxyPassReverse / http://MonMotClef.MonNomDeDomaine.fr:MonPort/
</IfModule>

</VirtualHost>

Une fois le vhost enregistré, il ne vous reste plus qu’à ajouter votre vhost dans la configuration d’Apache :

a2ensite MonSuperVhostSubsonic

A tester si la nouvelle configuration est valide :

apache2ctl -t

Et si vous obtenez le message Syntax OK, vous pouvez alors redémarrer Apache pour prendre en compte vos modifications :

/etc/init.d/apache2 restart

Il ne vous reste plus qu’à tester si l’adresse http://MonMotClef.MonNomDeDomaine.fr vous affiche bien votre serveur Subsonic.

Augmenter la limite d’utilisation de la mémoire de Subsonic :

Si un grand nombre d’utilisateurs se connectent à votre serveur, il peut être utile d’augmenter la mémoire que l’on dédie à Java.
Pour cela, il faut éditer le fichier de configuration de Subsonic :

nano /etc/default/subsonic

Pour y modifier la ligne suivante avec la valeur qui vous semble correcte :

SUBSONIC_ARGS="--max-memory=250"

Protéger Subsonic sans obligatoirement utiliser un firewall :

Comme nous utilisons (grâce aux manipulations réalisées précédemment) un proxy pour accéder à Subsonic, il est possible d’en limiter l’accès. J’entends par là que l’on peut empêcher l’accès à Subsonic lorsqu’une personne tente d’accéder au port qui écoute sur le réseau.
Dans l’objectif de ne pas utiliser de pare-feu (ou pour ne pas modifier la configuration des ports de votre serveur), il est possible de faire en sorte que Subsonic ne traite QUE les demandes venant de son propre environnement. Il sera alors accessible seulement en localhost et un appel de Subsonic via son port d’écoute depuis l’extérieur ET ne passant pas par notre proxy ne retournera qu’un échec de connexion.

 

Fonctionnement de Subsonic via Apache Server

Schéma du fonctionnement de Subsonic & Apache (Merci Onii)

 

Il faut donc éditer le fichier de configuration que nous avons précédemment modifié pour y ajouter l’argument suivant :

SUBSONIC_ARGS="--host=127.0.0.1"

Pensez ensuite à redémarrer Subsonic pour que les modifications soient prises en compte :

/etc/init.d/subsonic restart

Profiter pleinement de Subsonic :

Comme dit plus haut dans ce billet, des applications pour smartphones sont disponibles. Histoire de profiter au maximum des capacités de Subsonic, je ne vous donnerai qu’un seul conseil … allez sur le site de l’éditeur pour faire un don au développeur (il bosse en solo). Ce don vous permettra d’obtenir une clef de licence permettant l’utilisation sans limite des différentes applications iPhone/iPad/Android et autres bonus disponibles (retrait de la PUB, fonctionnalités en cours de développement etc.).

Il ne vous reste donc plus qu’à profiter de votre serveur de streaming et d’épater tous vos amis en écoutant VOTRE musique en ligne :)

Mes « marque TA page » glanés lors de ce périple « streaming » :



– Essayez Subsonic avant de vous lancer dans son installation – Démo en ligne
– Un guide très détaillé (en anglais) pour déployer Subsonic sur Windows

Source de l’image utilisée en illustration : Logo officiel Subsonic que j’ai ensuite modifié.

Voici les sources que j’ai utilisées pour réaliser ce billet :
– Le site officiel de Subsonic
– Et de nombreux postes disponibles sur le forum officiel de Subsonic (c’est une vraie mine d’or)
Comment configurer un reverse Proxy avec Apache
– Et bien sûr l’aide Onii, nos échanges nous ont permis à tous les deux de découvrir les secrets que renfermait Subsonic :)

106 Commentaires


  1. Pingback : Subsonic – Ou comment monter son serveur de streaming audio ! | formation 2.0 | Scoop.it

  2. Pingback : Subsonic – Ou comment monter son serveur de streaming audio ! | Veille Techno "Autrement" | Scoop.it

  3. Pingback : Subsonic – Ou comment monter son serveur de streaming audio ! | Tutoriels | Scoop.it

  4. Viens de mettre en place tout ça en moins de temps qu’il n’en faut pour lire le post ! Le tuto est très clair, et Subsonic est vraiment génial !

    • En voilà une bonne nouvelle !!
      Content que cela soit opérationnel et relativement simple à mettre en place :)
      Si jamais tu déniches des astuces et autres bonus pour Subsonic, je suis preneur donc n’hésites pas à repasser par ici pour les partager avec tout le monde !

  5. Salut Joël

    Je tombe par hasard sur ton site, venant d’installer il y a quelques jours ce fameux subsonic que je trouve vraiment excellent…

    Une question, as-tu testé la lecture pour les vidéos, via un poste distant? J’ai quelques coupures fréquentes pour ma part malheureusement. Pour ma part, j’ai fait une donation. J’apprécie la lecture via une petite tablette dans le lit ;) ou n’importe où chez les amis. Je trouve subsonic très intéressant pour les personnes telles que moi qui rangent leur musique dans des dossiers, genre par genre (je suis un peu fâché avec les tags, j’aime ranger ma musique avec « précision »). Là-dessus c’est nickel et ça permet facilement et agréablement, de redécouvrir sa collection. As-tu testé sur une tablette via le client android? Nickel pour moi mais par contre, certains dossiers de ma collection foirent (je ne sais plus le message, mais il trouve une erreur). Je me demande si cela vient de caractères spéciaux…

    • Salut Vivien :)

      Désolé pour le temps de réponse, j’ai été pas mal occupé ces derniers jours !
      Concernant ta question, je t’avouerai que je n’ai encore jamais utilisé Subsonic en mode « lecteur de vidéos ».

      En terme de serveur de streaming, voici ma configuration :
      – Un subsonic sur un serveur distant pour pouvoir profiter de ma musique partout à partir du moment que j’ai accès à une connexion ADSL/3G, en sachant que certains clients font de la mise en cache ce qui peut être utile sans connexion Internet.
      – Un Plex Media Server sur un serveur hébergé chez moi pour pouvoir me regarder un film de temps en temps sur tablette ou smartphone ou via mon AppleTV.

      Sinon lorsque je suis en déplacement, je prévois toujours de stocker sur ma tablette quelques films pour être tranquille, et cela évite de galérer avec les problèmes de coupures que tu rencontres.

      J’ai également fais une donation, le travail du développeur en vaut réellement la peine ;)

      Pour ce qui est d’Android, je n’ai pas testé sur une tablette car je n’en possède pas (je suis plutôt orienté Apple désolé), par contre, j’ai créé un accès Subsonic à mon frère qui tourne sous Android sur un HTC et il en est super content et ne rencontre pas de problème !!

      Pour les caractères spéciaux, j’ai une seule et unique règle que j’applique pour tout type de fichiers et/ou dossier, si ça doit transité sur le réseau, je suis en mode lowercase (minuscule) et sans accent histoire d’éviter les problèmes d’incompatibilité que l’on rencontre régulièrement !

      N’hésites pas à repasser par là si tu as d’autres questions, ou si tu souhaites partager ton expérience, je suis super curieux en plus ^^

      A bientôt !

  6. Salut,

    Je n’ai absolument pas suivi ce tutoriel. J’ai fait la base, créer un compte, garder le port de base, et modifié mon adresse pour y accéder. J’ai tout mis sur l’application etc … Tout y est. Mais justement, je me demandais, le fait de ne pas avoir suivi le tuto’ (assez compliqué, et peu de temps pour un novice comme moi), si cela aller changer quelque chose ? Au fait, moyen de l’avoir sans faire de don ? :/

    Merci. ^^

    • Salut Richard,

      Désolé pour ma réponse tardive, mais la fin de la semaine a été un peu chargée xD

      Suivre mon billet ne va pas changer le fonctionnement de l’application et si ta configuration est fonctionnelle comme ça, c’est suffisant pour l’utiliser.
      Ce tutoriel permet simplement de personnaliser la configuration de base et surtout (c’est le plus important à mes yeux) permet d’accéder au serveur Subsonic avec un nom de domaine propre.

      C’est à dire qu’il n’est pas nécessaire de renseigner le port d’écoute du serveur pour y accéder, je trouve ça bien plus « propre » et pratique car cela évite le http://blabla.com:3232/ en le remplaçant par un http://musique.blabla.com/.

      Concernant ta dernière question, je n’ai pas cherché à contourner le système pour éviter de faire un don, je trouve que récompenser le travail du développeur en vaut réellement la peine … Tu ne trouves pas ?!

  7. Merci de la réponse ! En fait, je viens de comprendre à quoi ça peut servir : D’écouter sans que le PC soit allumé, non ?

    Bah un ami, qui m’avait parlé de ce site, m’avait dit qu’on pouvait contourner, d’où mon interrogation., x)

    • Pas de quoi pour la réponse, c’est toujours avec plaisir :)
      Par contre, je ne comprends ta question en fait … je pense que je n’ai pas cerné quelle partie de mon billet te pose problème ^^
      Dans mon précédent commentaire, j’ai peut être répondu à côté de ta réelle question du coup … non ?!
      N’hésites pas à me le dire si c’est le cas, car je ne vois pas ce que tu cherches à dire par « écouter sans que le PC soit allumé ».

  8. Oups. Je voulais préciser depuis l’application de l’iPhone, c’est surtout cette partie qui m’intéresse, en fait, vu que j’ai un iPhone avec peu de place et que j’ai beaucoup de musique, je recherchais une alternative à iTunes Match gratuite, et il y avait ça. Et apparemment, faut que le PC soit tout le temps allumé pour écouter depuis le portable. Voilà ! ^^’

    • Salut :)

      En effet, le principe d’un serveur de streaming de contenu est bien d’être disponible 24h/24.
      Imagines si Google décide d’éteindre les serveurs de Youtube la nuit … ben c’est la même chose pour la machine qui héberge Subsonic ^^

      Une chose à prendre en compte tout de même, je sais que l’application Subsonic sous Android stocke en mémoire cache les morceaux qui ont été écoutés, il est donc possible de les ré-écouter alors que tu n’es pas connecté à Internet ou que tu n’as pas de réseau. En se basant sur cette information, le serveur Subsonic pourrait éventuellement être éteint et te permettre tout de même d’écouter la musique sur ton téléphone. Seul HIC, on retombe à nouveau sur le problème du manque de place sur le smartphone …

      Pour information, je ne sais pas si l’application pour iPhone stocke, elle aussi, les morceaux en local, je n’y ai jamais fait attention …

      N’hésites pas à repasser par ici si tu as d’autres questions, si je peux t’aider, je le ferais avec plaisir :)

  9. Bonjour, merci pour ton tuto. Je me suis lancé dans l’aventure linux (histoire de voir autre chose) en louant un petit serveur dédié. J’ai installer pas mal de truc depuis ces 2 derniers puis je suis tombé sur ton tuto et je me suis dit que subsonic avait l’air génial et surtout assez simple a l’installation.
    Malheuresement, je n’arrive pas accédé a mon serveur, en effet j’ai télécharger le paquet puis executer l’installation grace a dpkg. J’ai rajouter dans mon iptables une exception pour le port 4040 (je voulais juste testé en premier lieu avant de m’occupé de la sécurité). J’ai bien installer JRE.
    Cependant quand je vais sur xxxxx.fr:4040 je n’accède a rien, la page est en permanence en chargement… Aurais-tu une idée d’où cela peut-il venir?

    • Salut,

      Désolé pour ma réponse tardive mais un problème IRL a eu raison de mon peu de temps libre ^^

      Concernant ton problème, là tout de suite, je ne vois pas vraiment d’où le problème pourrait venir … ça ressemble à une erreur dans le vhost de ton serveur Web, tu tournes sous Apache ?

      Sinon quelques pistes à explorer :
      – Vérifier que la règle iptables soit correcte
      – Vérifier que tu es bien configuré le bon port lors de l’installation et de la configuration du paquet
      – Vérifier que tu n’es pas une rewrite rule qui redirige ta requête Subsonic vers autre chose

      Tu n’as pas un message un peu parlant dans les logs Apache (ou de tout autres serveurs Web d’ailleurs ^^)

      • Merci de ta réponse. Alors pour tes questions oui j’utilise bien apache, cependant j’ai une question, je ne vois pas trop ce que j’aurais a configurer dans apache si je test d’accéder a subsonic directement en tapant l’ip:port?
        Pour iptables, j’ai bien rajouter une exception dans mon script je l’ai executé, par contre je ne suis pas en mesure de lire la commande iptables -L. En effet je me suis rendu compte que cette commande ne me renvoyait pas les « ports » ouvert mais plutot des noms du genre ssh domain http https http-alt (je suppose que c’est celui la).
        Concernant les logs apache rien à relever dans le « error.log ».
        Encore merci de tes réponses

        • Salut Rodrive :)

          Dans ton précédent commentaire, tu m’as dit que tu avais essayé xxx.fr:4040. Le résultat est le même si tu fais IP_SERVEUR:PORT ?

          Concernant iptables, c’est bizarre que tu n’es pas une liste des ports, si je fais un iptables -nL sur mon serveur voici un exemple de ce qu’il me retourne :
          ACCEPT tcp -- 0.0.0.0/0 0.0.0.0/0 tcp dpt:80
          ACCEPT tcp -- 0.0.0.0/0 0.0.0.0/0 tcp dpt:443

          On vient bien que les ports 80 et 443 sont ouverts et accessibles pour depuis toutes sources et pour toutes destinations.

          Si je comprends bien, tu n’as pas mis en place la partie proxy, c’est bien ça ?!

          • Bonjour Joel, merci de ta réponse.
            Oui le résultat est le meme que je passe par le nom de domaine ou bien par l’ip.
            Concernant iptables j’ai fini pas trouvé le « -n » et donc je peux te confirmer que le port est bien ouvert, j’ai de plus testé en ouvrant tout les ports et le résultat était le même.
            J’ai fait un netstat et je n’ai aucune connexion sur le port 8080… pourtant si je fais un « top » je vois bien le service subsonic, j’imagine donc que le service est mal lancé :(
            Effectivement je n’ai pas encore mis en place le reverse proxy je voulais déja tout simplement tester subsonic, ce que je n’arrive pas à faire.

          • Attention, le port par défaut de Subosnic est le 4040 et non 8080.
            Si jamais tu as forcé le 8080 toi même dans la configuration, il faut vérifier avant que tu n’es rien qui utilise déjà ce port sinon ça va générer des conflits …

          • Oui effectivement, j’ai changer le port je voulais voir si ca venait de la mais apparemment non.
            Je suis en train d’essayé de l’installer « à la main »et apparemment j’ai un problème au niveau de java.
            En effet après avoir tout installer à la main et lancé le service j’ai une erreur fatale de java. Je me penche la dessus actuellement. Merci de tes réponses.
            (j’ai jamais de chances, à la base ca avait l’air facile et la je galère …)

            Edit:après avoir désinstaller java, j’arrive à accéder au dossier. En effet je tombe sur la page comme une page brute apache ou je vois tout les fichiers etc…

          • Bizarre en effet … tu n’as pas un compte Skype ou autre pour que l’on puisse en discuter en direct ?
            Ça sera plus pratique que par le système de commentaires non ? ^^

          • Oui j’osais pas te le demander, je voulais pas te déranger. Mon skype : neoxnox.

            Merci à toi

  10. Salut,

    Je viens de faire ton tuto (en très bonne place sur google soit-dit en passant) et tout marche au poil ! Merci bien, surtout pour la partie proxy que je ne connaissais pas dans apache.
    Voilà le site pour preuve ^^ : http://music.les-trolleurs.fr

    Par contre y a-t-il un moyen d’autoriser l’inscription d’utilisateurs ?

    • Merci pour le tuyau Guigui, je n’avais pas encore entendu parler de Supersonic !
      Je vais tout de suite y jeter un œil, les forks sont souvent intéressants :)

  11. Salut!!

    J’utilise Linux dans mes études mais j’ai jamais vraiment utilisé à titre personnel. J’ai décidé de m’y mettre hier soir. Alors j’ai installé une debian sur un vieux coucou que j’ai à la maison dans le but d’en faire un serveur subsonic etc (serveur beaucoup de choses en fait, pour tester et évoluer sur nunux :p)

    J’ai donc trouvé ton méga super tuto!

    J’ai encore rien fait car sur le site de subsonic, j’ai constaté qu’il y avait une version War.
    Donc du coup, je me questionne et me demandais si tu avais la réponse à cette question :

    La version Debian n’utilise pas de serveur web ? J’ai vu que tu te sers d’Apache comme reverse proxy, très bien, mais à part cela?
    Car la version WAR nécessite un servlet container elle. Alors ça amrche comment sous Debian, ya un jetty integré comme sur la standalone?

    Merci d’avance.

    • Salut,

      En ce qui me concerne, j’héberge mon Subsonic sur un serveur qui n’est pas chez moi donc j’ai configuré un Apache ainsi qu’un vhost afin de pouvoir accéder à l’interface du serveur de streaming via un nom de domaine tout simplement :)

      Si tu installes Subsonic au sein de ton réseau local, tu n’auras pas besoin de toute cette partie du tuto car tu pourras accéder au serveur via l’URL suivante : http://localhost:4040/

      Concernant la version WAR, je ne l’ai pas testé, je pense que tu vas avoir besoin d’un Apache Tomcat pour pouvoir « exécuter » le WAR de Subsonic, mais là tout de suite, je n’en sais pas plus désolé, surtout en ce qui concerne le Jetty ^^

  12. salut,

    j’ai essayé ta méthode pour créer un sous-domaine vers subsonic, mais en fait je n’ai pas compris quoi mettre comme port dans les dernière lignes du vhost: 80? 4040? rien? j’ai testé plein de trucs mais j’ai toujours pas accès à music.nitche.org :/

    • Salut Nitche :)

      Dans les dernières lignes de ton vhost, il faut que tu ajoutes les port que tu as paramétré dans ton Subsonic à la ligne SUBSONIC_ARGS= »–port=NuméroDuPort ».

      Si jamais ça ne fonctionne pas, essaies 2 choses :
      1) Redémarrer Subsonic correctement, c’est à dire stop puis start
      2) Vérifier que le port que tu as configuré soit bien autorisé à traverser le firewall

      N’hésites pas à repasser par ici si ce n’est toujours pas ok !

      PS : J’ai fait un tour sur ton site ce matin, j’aime beaucoup le concept de ta catégorie « Fiction » ainsi que cette histoire que tu déroules petit à petit. Du coup, tu as gagné un nouvel abonné RSS car après avoir lu le début, je veux connaître la suite ^_^

      • salut,

        dans mon fichier config j’ai ça:
        SUBSONIC_ARGS= »–max-memory=150″
        pas de port défini on dirait, donc je laisse vide (juste mon sous-domaine sans port)? j’ai refait des essais (en relançant apache à chaque fois), mais pas de réponse pour l’instant. sinon je pourrais peut-être t’envoyer mon vhost pour voir si ya pas un autre sushi?

        PS. je suis content que tu apprécies mon feuilleton, tu es déjà mon deuxième follower déclaré :) si tout va bien demain je poste le prochain épisode ;)

        • Salut :)

          Si tu n’as pas précisé de port, alors il faut utiliser celui par défaut : 4040
          Pas de problème si tu veux m’envoyer ton vhost, j’y jetterai un œil sans faute ;)
          On peut faire ça par mail ou par Skype si tu préfères d’ailleurs …

          J’attends la suite de ton feuilleton avec impatience, ton histoire a piqué ma curiosité ^^

  13. Bonjour,

    Très bon tuto !

    Cela dit j’ai une question :
    Serait-il possible (je peux pas faire autrement pour pas mal de raisons), de faire passer subsonic par Monnomdedomaine.fr/subsonic plutot que par subsonic.monnomdedomaine.fr ?

    Merci !

    • Salut,

      Merci pour le retour positif sur le billet ^^
      Pour répondre à ta question, c’est en effet possible, il suffit de ne pas suivre la partie concernant la configuration d’Apache de mon tuto et d’ajouter un alias dans le Apache de ton serveur pour lui dire que l’adresse TonSuperDomaine.fr/subsonic pointe en réalité sur TonSuperDomaine.fr:PORT_SUBSONIC.

      Normalement, c’est assez simple à mettre en place :)

      • Merci pour la réponse rapide.

        Ce serais possible d’avoir un petit peu plus de détails ?

        Les sites et tutos que j’ai trouvé pour créer un alias Apache correspondent plus à rediriger une url vers un dossier, je sais pas vraiment comment et ou rediriger une url vers une autre url/port…

        Désolé et merci encore, je suis plutôt débutant en config serveur ;)

        • Tiens je viens d’avoir une idée …

          Essaies de mettre en place la config que je décris dans le tuto et modifies les lignes suivantes :
          ProxyPass / http://MonMotClef.MonNomDeDomaine.fr:MonPort/
          ProxyPassReverse / http://MonMotClef.MonNomDeDomaine.fr:MonPort/

          Pour obtenir cela :
          ProxyPass / http://MonNomDeDomaine.fr:MonPort/
          ProxyPassReverse / http://MonNomDeDomaine.fr/subsonic:MonPort/

          Si jamais cela ne fonctionne pas, je regarderai ça plus en détails ce soir en rentrant si j’ai le temps ;)

          Ps : pas de souci pour le coup de main, nous avons tous été débutant un jour ou l’autre et nous le sommes encore dans de nombreux domaines ^^

          • A priori ça ne marche pas non plus.

            Les difficulté de configurer ce que je voudrais viennent aussi du fait que j’utilise un dyndns. (c’est aussi pour ça que je peux pas faire du Sousdomaine.domaine.fr)

            Si par hasard tu y arrives avec la technique que tu donne dans ton commentaire précédent, je veux bien un retour, j’aimerais bien le faire marcher comme ça :)

            (en plus je trouve ça plus classe d’avoir le /subsonic que subsonic.machin, et ça pourrais servir pour d’autre chose qui tourne sur le serveur si j’arrive à le faire)

            en tout cas merci de ton aide, c’est intéressant ces histoires de vhost, pas que pour subsonic.
            (et les ip dynamique c’est chiant au contraire ^^)

          • Après des dizaines d’essais et de tests de syntaxe, j’ai fini par refaire ta solution, avec achat d’un nom de domaine chez OVH. Au moins ça marche ! :D

            Bon je suis quand même un peu déçu de pas avoir réussi à faire une solution propre a base de http://site.fr/subsonic/ , mais bon ça marche bien comme ça au moins :)

          • Salut Jack :)

            Cool si cela fonctionne enfin, et puis je trouve plus propre d’avoir un ndd ^^

            C’est tout de même bizarre que tu n’ai pas réussi à faire ce que tu voulais … normalement, une simple redirection du port vers ton dossier devrait fonctionner simplement …Tu veux toujours que l’on regarde cela ensemble ou le sous domaine te convient ?

            Personnellement, je préfère avoir un sous domaine dédié à chaque service qui tourne, mais c’est personnel comme choix :)

          • Ben c’est vrai qu’avec les sous-domaine ça marche plutôt pas mal.

            Pour faire marcher une site.fr/subsonic je sais pas pourquoi il en voulais pas, peut etre de l’erreur de synthaxe quelque part. Mais tant pis ça marche impec avec les sous-domaine, acheter un domaine était vraiment pas une mauvaise opération de toute façon.

            Par contre j’ai une autre question :
            Comment serait-ce envisageable de faire passer un site apache pour un service avec un vhost ? je m’explique.

            Si j’ai un site sur le serv accessible http://monserv.fr/site

            Comment faire pour rediriger http://site.monserv.fr/ vers http://monserv.fr/site ?

            Parce que si après on tape une adresse genre http://site.monserv.fr/index.php par exemple, la redirection ne se fait pas forcément bien.

            Bref ça m’a pas l’air si simple que d’appliquer le même vhost que celui de ton tuto pour subsonic…

            (par contre j’ai créé un vhost par service de mon serv accessible par un port, et ça marche impec ! mais pour un site web sur apache la je sèche ^^)

          • Salut Jack,

            En effet, il y a du avoir une erreur de syntaxe quelque part car faire pointer un site sur une URL du type site.fr/dossier est tout à fait faisable ^^
            Comme tu le dis si bien, si tu es en phase de tests ou autre avec un serveur, acheter un nom de domaine était plus que recommandable pour accéder facilement aux services que tu mets en place.

            Concernant ta question, la forme de l’URL que tu vas donné à ton site est définie dans les parties « ServerName » et « ServerAlias » de ton vhost.
            C’est ici que tu diras à Apache d’autoriser l’accès au « DocumentRoot » de ton vhost via ce que tu as paramétré dans ServerName par exemple.

            Donc en gros, tu n’as pas à faire en sorte que ton vhost redirige site.monserveur.fr vers monserveur.fr/site, c’est à toi de dire à ton vhost de faire pointer monserveur.fr/site vers le bon répertoire contenant les pages HTML/PHP ou autres …

            Je ne sais pas si mes explications sont claires, c’est la fin de journée et la journée a été dure ^^
            N’hésites pas à repasser par ici si ce n’est pas le cas :)

            @+

  14. Bonjour a tous .
    Merci pour se petit tuto bien sympathique.je nais pas suivi ton tuto car il ne convener pas a ma configurant. Enfait jai installer subsonic sur mon nas dns320 tous fonctionne parfaitement .naienmoin il reste un point ou je bloque c’est de donner le dossiers de musique a subsonic .car ma musique est dans un dossier a la racine de mon nas .mais il me dit folder not found .je vien poser cette question ici car vous avez lair tous ici de vien connaitre en linux .contrairement a moi ^^ merci davance si vous pouvez m’aider cordialement

    • Salut Fanfan,

      As-tu regarder si les permissions du répertoire contenant ta musique sont correctes ?
      Il faudrait que tu vérifies le propriétaire du répertoire ainsi que les droits de lecture/écriture …

      @+

  15. Salut joel merci ta reponse .
    Donc les permission pour le dossier ou il ya ma musique . Je peu faire se que je veux avec , la dessu tous fonctionne .en revanche le dossier var non . Jai essayer de faire un lien symbolique du dossier var/musique au dossier musique qui se trouve a la racine de mon nas .subsonic trouve bien musique mais il ny a rien dedan .c’est la ou que je coince ^^

    • Re Fanfan,

      Il est également possible de déplacer le répertoire contenant ta musique dans un dossier sur lequel tu as plus de permissions (comme le $HOME de ton utilisateur par exemple) et dire à Subsonic d’aller chercher le contenu de celui-ci.
      Peut être que c’est la solution que tu cherches ?

      Tiens moi informé, si cela ne fonctionne pas comme ça, on cherchera une autre astuce :)

      @+

  16. re joel
    je vien de trouver une solution qu un administrateur ma donner sur le forum d’hardware , la ou jai lu le tuto pour installer subsonic sur mon nas , au passage je te donne la solution sa peu aider plusieur personne qui sont dans mon cas :

    le mieux c’est de créer un raccourci vers ton dossier musique dans /var/music.

    en supposant que ta musique se trouve sur :
    /mnt/HD/HD_a2/Ma_Musique
    sous putty tu execute les commandes suivante :
    Code :

    1. cd /var/music
    2. ln -fs /mnt/HD/HD_a2/Ma_Musique musique

    explication :
    ligne 1 : tu te positionne sur le répertoire musci de subsonic
    ligne 2 : tu créé un raccourci vers ton répertoire contenant ta musique (/mnt/HD/HD_a2/Ma_Musique) et tu nomme le racourci « musique » (tu peux mettre le nom que tu souhaite)

    @+

    • Re Fanfan :)

      En effet, cette solution me semble correcte et le principal est tout de même que le tout fonctionne au final non ? ^_^

      Merci d’avoir pris le temps de partager cette info ici, on m’a d’ailleurs posé, il y a quelques jours de cela, ce genre de questions à propos de Subsonic par courriel. Donc je suis sûr et certains que ton commentaire sera utile pour de futurs visiteurs/lecteurs s’égarant par ici ;)

      Encore merci pour le partage de cette astuce et bonne continuation !!

  17. Re joel
    Derien pour le partage. Jai suffisamment galèrer pour trouver la solution donc je partage ^^
    Parcontre il reste un point a eclairssir. Le nas ne se met plus en veille depuis l’installation de la debian squeeze .a tu une idee pour quil puisse se remettre en veille ? .donc je confirme pour mon partage sa fonctionne pour les dossier que je voulais il suffit de modifier la ligne de commande a notrre guise^^

    • Concernant ton problème de veille, là tout de suite, je n’en ai aucune idée et ne possédant pas de NAS, je ne sais pas comment cette bestiole réagit …
      Par contre, sans vouloir faire ma pub, tu devrais peut être jeter un oeil sur mon dernier billet, j’y décris un problème de mise en veille d’une machine sous Ubuntu et comme cette distribution est basée sur une Debian à la base, je pense que tu pourrais trouver des infos utiles, comme l’emplacement des logs de gestion de mise en veille etc …

  18. Bonjour Joël,
    merci pour ce tuto, tu m’a fais découvrir une merveille pour profiter de mon serveur.
    Juste une petite question, peut-on autoriser un utilisateur a voir certain dossier et pas d’autre?
    Je partage mon serveur avec un ami et ça serai plus simple si chacun en ce connectant voit que ses dossiers.
    Merci.

    • Salut Hervé,

      Désolé pour ma réponse tardive, mais beaucoup de boulot en ce moment ^^
      Merci pour tes retours positifs, ça fait plaisir à lire et concernant ta question, je t’avouerai que je ne me la suis jamais posée.
      Je vais essayer de prendre un peu de temps pour voir si gérer le multiple-utilisateurs en fonction de différents dossiers est possible mais là tout de suite, je dirais que non …

      @+

  19. salut joël
    désoler de mon retout tardif
    j’ai essayé de faire se que tu ma dit de suivre ton poste . mais vu que cest un nas et non un ordinateur les commande qui sont donné dans ton poste ne fonctionne pas donc mon probleme de mise en veille de mon nas reste entier :s . jessaye de chercher de mon coté et je reviendrai te voir si je trouve une solution a mon probleme

    • Salut Fanfan,

      Bon courage pour tes recherches, n’ayant jamais eu de NAS je t’avoue que cela va être compliqué pour moi de t’aider sur ce coup ^^
      Tiens moi informé si jamais tu trouves une solution et n’hésites pas à la partager ici avec tout le monde ;)

      @+

  20. Salut je suis entrain de tester ton tuto et j’ai un souci au niveau de la creation des dossiers via :
    mkdir /home/Subsonic/Musique
    voila ce que ca m’ecrit
    # mkdir /home/Subsonic/Musique
    mkdir: impossible de créer le répertoire «/home/Subsonic/Musique»: Aucun fichier ou dossier de ce type
    merci de me dire comment faire dsl je débute

    • je pence avoir trouver c’est que ma racine ne s’appel pas home enfin du coup j’ai simplement ajouter les dossiers comme ceci
      mkdir Subsonic/Musique
      et dans la config Subsonic dans l’onglet Paramètres/Dossier de musique/ NOM :Music comment c’était ecris puis DOSSIER : Subsonic/Musique
      en espérant que ce soit bon tien moi au jus

      par contre j’ai un problem avec Apache

      root@ksXXXXXX:/etc/apache2/sites-available# apache2ctl -t
      /usr/sbin/apache2ctl: line 171: /usr/sbin/apache2: No such file or directory
      Action ‘-t’ failed.
      The Apache error log may have more information.

      peux tu m’aider merci

      • Salut Florian :)

        Je suis enfin rentrer de vacances (petite ballade au Canada pays que j’adore !!) et je vais enfin pouvoir m’occuper de tes différentes demandes si tes problèmes n’ont pas déjà été résolus entre temps ^^

        Pour commencer, avoir un système sans répertoire HOME est assez étrange pour le coup. Tu as peut être modifier quelque chose lors de son installation non ?
        Tu fais les manipulations avec quel utilisateur ? T’es-tu créer un utilisateur spécifique à Subsonic ? Si oui, tu ne lui as peut être pas créer de HOME dédiée …

        Concernant le problème d’Apache, tu as vérifié qu’il soit bien installé ? Et les logs … ils racontent quoi de beau ?

        Je suis disponible cette aprem donc n’hésites pas à repasser pour que l’on fasse un point ensemble si tu le souhaites ;)

        ++

  21. Salut à tous !

    Je dois dire que le tuto est super bien fait même si j’y comprends pas grand-chose…

    En fait j’ai une question, tout est bien installé, fonctionne très bien, mais uniquement avec Wifi.
    Je n’ai pas réussi à faire marcher l’application avec la 3g, ça doit être tout con mais j’arrive pas à le voir haha

    Merci pour votre réponse =)

    • Salut Deam,

      Merci pour ton retour positif concernant ce tuto, ça fait plaisir à lire ;)
      Concernant ton problème via 3G, il va y avoir plusieurs questions qui vont sûrement se poser.
      Pour commencer, as-tu suivi le tuto en entier ? Tu as assigné un nom de domaine à ton Subsonic etc. ?
      Le serveur est où ? En local sur ton réseau ou hébergé dans un datacenter ?

      Avec cet ensemble de réponses, je devrais commencer à cerner plus ou moins l’origine de ton problème et voir si je peux t’aider.

      @+

  22. Salut Joël !

    Alors j’ai pas vraiment suivit le tuto en entier non, je me suis contenté d’installer Subsonic, enfin j’ai suivi les instructions quoi.

    Le serveur ? C’est à dire ou est ma musique ? (Désolé je suis pas très avancé en informatique)
    ça doit être en local sur mon réseau, je laisse la page web de Subsonic allumé sur mon pc (mac) et j’y ai accès.

    Si je peux te donner d’autre info, ben j’ai un wifi un peu pourri mais ça va je m’en sors haha et sinon j’ai héberger le truc en 4040 (j’ai cru comprendre qu’il y avait plusieurs façon de faire le serveur, j’ai vraiment suivi le truc de Subsonic)

    Voilà, j’espère que t’auras pas à faire une réponse trop long vu mon manque de savoir-faire haha

    Merci encore !

    • Salut Deam,

      Ne t’inquiètes pas pour ton manque de connaissance, nous sommes tous passer par là et c’est tout à fait normal :)
      De plus, si tu es sur ce blog, c’est parce que tu cherches à apprendre et j’aime ça donc pas de problème !!

      Quand je parlais de serveur, c’était en effet la machine sur laquelle tu as installé Subsonic et où se trouve la musique que tu souhaites streamer.
      Donc pour répondre le plus simplement possible à ta question, si ton serveur se situe au sein de ton réseau local, il est normal, sans affiner la configuration de celui-ci, que tu ne puisses pas y accéder via le réseau de la 3G. Seul les appareils connectés à ton réseau local (Wi-fi et/ou Ethernet) pourront y accéder sans restriction.

      Si tu souhaites rendre Subsonic accessible depuis l’extérieur il va y avoir encore pas mal de choses à faire comme par exemple ouvrir les ports cibles sur ta box et faire une redirection des paquets passant aux travers du port configuré vers la machine qui héberge Subsonic. Il est également possible de donner un nom à ton serveur Subsonic pour éviter de taper son adresse IP pour y accéder et c’est d’ailleurs ce que j’explique dans la fin de mon article.

      Enfin tout est possible, maintenant à toi de voir si tu souhaites te lancer dans ce projet :)

      @+ et n’hésites pas à repasser par ici si jamais tu as d’autres questions, j’y répondrais avec plaisir !!

    • Salut Chiron,

      Là tout de suite, je n’ai jamais essayé de streamer du contenu vidéo via Subsonic donc je ne pourrais pas te répondre …
      Mais on peut regarder ça ensemble si tu veux :)

      D’ailleurs, si jamais tu as déjà trouver la réponse, n’hésites pas à la partager ici car je pense que tu n’es pas le seul à te poser ce genre de questions.

      @+

  23. salut pour info je suis chiron!!

    je suis sur server dédié chez ovh !!
    les video avec sous titre intégrer marche très bien le probléme c’est pour le video exemple en .mkv et les sous-titre en .srt le lecteur ne peut pas les lires si tu as du nouveau dis moi ?

    • Arf désolé Chiron, mais je n’ai pas encore pris le temps de me pencher sur cette question …
      Tu as pu avancer de ton côté ?
      PS : désolé pour ma réponse tardive, mais c’est un peu le bordel IRL en ce moment huhu donc je m’occupe du blog quand je le peux :)

  24. Merci pour ce tuto j’ai monté ça en 5mn sur mon kimsuffi :) petite question je veux une bibliothéque différente par utilisateur car j’écoute pas du tout la même musique que ma femme.

    A priori c’est pas dissociable mais peut être que je peut créer un 2éme serveur subsonic sur ma debian avec un autre port d’écoute. mais je me demande comment faire ce prodige ! une idée ?

    Merci encore :)

    • Salut Seb,

      Content que tu es pu monter le serveur en peu de temps, c’était l’objectif de ce billet donc je peux dire que c’est une réussite ^^

      Concernant la question de la bibliothèque par utilisateur, je t’avouerais que je n’y avais jamais pensé … J’ai fait un tour rapide dans les options de Subsonic et je ne pense pas que cela soit possible.
      Je pensais que c’était faisable via l’ajout d’un nouveau répertoire de stockage de la musique dans les paramètres avancés, mais apparemment il n’y a pas de moyen d’attribuer un dossier à un utilisateur en particulier (ou alors je n’ai pas trouvé comment faire).

      En revanche, il est sûrement possible de lancer une seconde instance de ton serveur Subsonic. Je pense que tu devras faire les manipulations suivantes :
      – Créer un nouveau vhost Apache pour l’instance supplémentaire de Subsonic sur des ports différents, idem pour le proxy.
      – Refaire une configuration séparée pour le stockage des fichiers musicaux etc.
      – Lancer manuellement Subsonic sur un port différent de celui que tu utilises déjà pour ton instance.
      La commande suivante va te permettre de connaître comment Subsonic est démarré : ps aux | grep -i subsonic. Réutilises le résultat en adaptant les paramètres utiles pour ta nouvelle instance (home, host, port, https port etc.).

      Maintenant, je ne sais pas si cela est très propre en terme de performances, mais cela devrait répondre à ton besoin ^^
      As-tu regarder si dans la version béta actuelle (ce n’est pas celle que j’utilise) cette fonctionnalité n’est pas proposée ?

      N’hésites pas à repasser par ici si jamais tu as réussi et même si cette méthode n’est pas concluante, on finira bien par trouver une solution ;)

      @+

  25. Hello joël !

    Je passe juste pour signaler quelque chose qu’il pourrait être intéressant de signaler :

    On a reformater notre serveur, et remettant les vhost, il semblerait qu’avec les nouvelles versions d’apache, il exige parfois que les vhost soient suffixés par un .conf pour que ça marche, sinon on obtient un message du style « Site does not exist » quand tu essaie de l’ajouter à la config apache.

    Si d’autre tombe sur le casse-tête, ça peut être intéressant à signaler dans le tuto.

    (le problème se produite lors de la commande « a2ensite MonSuperVhostSubsonic » et donne l’erreur suivante : Error MonSuperVhostSubsonic does not exist »)

    • Salut JackObson :)

      Merci pour le partage de cette information, je ne suis pas encore tombé sur ce problème mais c’est cool de repasser par ici !
      Je pense en effet que cela va sûrement en dépanner plus d’un et je ferais quelques tests pour vérifier ça de mon côté.
      Si en effet, je remonte le même problème, je mettrais le billet à jour !

      Encore merci et bonne continuation.

  26. Bonjour,

    Merci pour ton site et surtout pour ce tuto très instructif !

    Je découvre le monde de debian avec le raspberry pi et je m’éclate bien (je galère beaucoup aussi !)

    J’adore Subsonic (avant j’étais sous windows) et je veux absolument le faire tourner sur le rasp 24h/24h surtout pour accéder a ma collection musicale (au passage vive Hightone ! même si je préfère Zenzile !) de l’extérieur (en 3g) ou chez moi en wifi.

    J’ai suivi de nombreux tutos et je me suis arrêter sur le tien pensant trouver la solution à un casse tête depuis 1 semaine :

    Tout fonctionne parfaitement,j’accède bien à mon serveur subsonic avec le navigateur.
    J’ai un nom de domaine chez ovh , j’ai changé le port et ouvert dans le firewall ainsi que dans la freebox mais le GROS SOUCIS:

    impossible de lire la musique à partir d’un téléphone ou tablette android !
    pourtant il se connecte bien,je vois les fichiers,les pochettes mais si je lance une lecture RIEN A FAIRE ! (il marque juste « buffering »)

    Certainement un problème de droit en lecture ?

    Etant débutant je sèche…une idée ???????

      • Salut Michaeles,

        Désolé pour ma réponse tardive, mais l’IRL me prend tout mon temps libre en ce moment ^^
        Alors pour commencer, merci pour les retours positifs concernant mon tuto, ça fait toujours plaisir à lire !
        Ensuite, désolé de ne pas avoir pu t’aider avant et super si tu as fini par trouver LA solution pour faire fonctionner ton installation !

        Je vois en plus de cela que tu as de bons goûts musicaux :)
        Comme tu le dis si bien, vive High Tone et voyant que tu apprécies également Zenzile, je me permets de te faire une suggestion musicale qui à mon avis te plaira si tu ne connais pas déjà : ZENTONE ou tout simplement une rencontre sur un même album d’High Tone et de Zenzile pour un pur moment de bonheur musical !

        Je te laisse découvrir cela par toi même, tes oreilles te remercieront ;)
        N’hésites pas à repasser par ici si besoin, je tâcherai d’être plus réactif en terme de temps de réponse xD

  27. Bonjour,
    Je n’ai pas lu tout les posts mais il y a une petite astuce pour éviter que le port s’affiche dans la barre d’adresse, si vous utilisez un nom de domaine et que votre serveur est publique.

    Dans le fichier Apache /etc/apache2/sites-available/votrehost :

    ProxyRequests Off
    ProxyPreserveHost On
    ProxyPass / http://MonMotClef.MonNomDeDomaine.fr:MonPort/
    ProxyPassReverse / http://MonMotClef.MonNomDeDomaine.fr:MonPort/

    Mettre le ProxyPreserveHost à « On ». Et valà le port ne s’affiche plus :)

    ++

    • Salut Christophe,
      Merci pour le partage de cette astuce !
      Il est vrai qu’il existe plusieurs manières de « masquer » les ports utilisés par une machine et celle-ci est plus rapide à mettre en place.
      @+

  28. Salut,
    Merci pour le tuto tout est bien installé .
    Néanmoins j’aurais quelque petite questions .
    -Comment faire pour accéder à mon site en dehors de mon réseau local (j’imagine qu’il faut ouvrir les ports dans ma box non ? )
    -Ma musique est stockée sur un disque dur externe alimentée électriquement , comment dois je faire pour que subsonic aille chercher mes musiques dans le bon répertoire.
    -Puis je créer un raccourci vers mon dossier de musique ,situé sur mon hdd externe , dans mon home ?

    Je suis sous raspbian sans interface graphique (quelques problèmes :/)

    merci d’avance

    • Hello Mickael,

      Merci pour ton retour positif concernant ce tuto, ça fait plaisir à lire :)

      Voici l’aide que je peux t’apporter concernant tes différentes questions :

      * Accès à ta musique en extérieur :
      Oui en effet, si ton serveur est hébergé chez toi derrière une box, il va falloir que tu fasses plusieurs choses :
      1) Ouvrir le port 4040 de ta box (port par défaut utilisé par Subsonic si il n’a pas été modifié par le développeur depuis que j’ai rédigé l’article)
      2) Trouver un moyen de connaitre ton adresse IP. Si celle-ci est dynamique, essayer de mettre en place un DNS dynamique qui pointera vers cette IP
      3) Tester le couple IP:PORT ou NomDeDomaine:PORT pour voir si tu accèdes à ton service Subsonic

      * Pour l’accès à la musique stockée sur un disque externe :
      Je n’ai jamais tenté de faire ce genre de choses mais je vois 2 façons de répondre à ton besoin …
      1) Essayer de créer un lien symbolique dans les dossiers que tu as créé dans le « Home » de Subsonic si tu as suivi les indications du tuto.
      L’objectif étant de faire pointer ces liens symboliques vers les répertoires de ton disque dur externe.
      2) Si le coup du lien symbolique ne fonctionne pas :
      Dans la partie « Création des répertoires utilisés par Subsonic » de mon article, je décris 1) comment créer les dossiers « Musique », « Podcasts » et « Playlist » de subosnic et 2) comment configurer Subsonic pour aller lire les données stockées dans ces répertoires. Je pense que si tu reprends la partie « paramétrage » et que tu configures Subsonic pour aller lire les données stockées dans ton disque externe cela devrait fonctionner. Il faudra éventuellement que tu modifies les permissions attribuées à ces répertoires pour que Subsonic puisse avoir le droit de les lire.

      * Pour le « raccourci » :
      Je ne comprends cette demande désolé ^^

      N’hésites pas à revenir vers moi si les solutions que je te propose ne sont pas assez claires et/ou qu’elles ne fonctionnent pas :)
      Et ne t’inquiètes pas, le fait de ne pas avoir d’interface graphique ne t’empêchera en aucun cas de mettre en place la configuration de tes rêves !

      Bonne bidouille et bonne fin de journée =)

  29. Bonjour,
    J’ai réinstallé complétement raspbian , du coup j’en ai profité pour réinstaller aussi subsonic .
    Tout fonctionne parfaitement maintenant .
    Dans ma box , j’ai ouvert le port 4040 en tcp et en udp et j’accède bien à mon subsonic depuis l’extérieur . J’en ai profité pour attribuer une ipfixe à mon raspberry.

    Pour le côté disque dur externe , j’ai branché un hub avec une alim externe et je l’ai branché dessus . J’ai juste eu à indiquer à subsonic le chemin de mon disque .

    J’en ai profité aussi pour installer subsonic sur mon poste en Windows.

    • Hello,

      Je vois que tu as fini par faire réussir à mettre en place la config que tu souhaitais sans problème, c’est cool tout ça !
      Du coup, penses-tu que des informations supplémentaires devraient être ajoutées au tuto ?

      Profites bien de ton installe Subsonic et bonne continuation =)

  30. Hello,
    J’avais réussi à le mettre en place , tout fonctionnait bien . Là je me connecte dessus , je n’ai plus de musique détecté . Je lance la connexion vnc , le disque est bien monté . je me déco de vnc et de subsonic et je reboot le raspeberry et là c’est le drame . J’ai beau relancer le service subsonic, je ne peux plus me connecter dessus . Je ne comprend pas pourquoi .Même en utilisant le localhost je ne peut rien faire . Je sens que je suis bon pour une réinstallation de subsonic.

    • Hello,

      J’espère que j’arrive à temps pour te dire une chose : ne fait surtout pas de réinstallation !!

      Pour moi là tout de suite, je vois 3 choses à faire avant de « tout casser » ton RaspBerry, c’est d’essayer de faire un peu de debug …

      1) Redémarrer proprement Subsonic
      2) Aller fouiner un peu dans les logs de Subsonic pour voir si on ne trouve pas l’origine du problème
      3) Aller fouiner un peu dans les logs d’Apache si on ne trouve rien de suspect dans les logs de Subsonic

      Normalement avec ça, on devrait pouvoir être capable de faire quelque chose ;)

      Tiens moi informé de la situation =)

  31. Hello,
    Comme j’ai reçu une nouvelle carte SD j’ai tout refait au propre , et tout refonctionne parfaitement bien .J’ai aussi compris pourquoi lors de ma première installation je n’avais pas d’interface graphique , j’avais pris une version lite de raspbian :D .
    J’avais fouiné un peu dans les logs d’apache et je n’avais rien trouvé d’anormal .
    Merci de ton aide

  32. Encore moi :)

    J’ai reboot mon pi et depuis subsonic ne se lance plus .
    Le service est bien fonctionnel , j’arrive à me connecter au pi .
    Le plus étrange c’est que même en localhost , celui ci ne fonctionne plus .
    J’ai même essayé de faire /etc/ini.d/subsonic restart et rien à faire .
    Je vais aller fouiner du côté des logs de subsonic et d’apache mais c’est énervant cette histoire .

    Bonne soirée

    • Re :)

      Franchement, je n’ai jamais eu ce genre de problème …
      Je pense en effet, qu’à part aller fouiner dans les logs, tu n’as pas grand chose de plus à faire.
      N’hésites pas à repasser par ici, si je peux t’aider je le ferais avec plaisir =)

      Bon debug !

  33. re :)
    J’ai tout remonté et j’ai voulu relancer le service proprement après avoir scanné mes fichiers avec service subsonic force-reload et depuis j’obtiens une erreur 503. J’ai pris des screens des log de subsonic mais je n’arrive pas à trouver quoi que ce soit dedans .

  34. Je réponds un peu tard , mais les logs ne m’avaient rien appris :/
    Du coup j’ai réinstallé raspbian et subsonic est up and running .
    Du coup je n’ose plus reboot mon pi pour essayer autre chose .

    • Hello Mickael,

      Franchement, si en cas de reboot ton installation de Subsonic ne redémarre pas, cela signifiera qu’elle n’avait pas été faite correctement.
      C’est un peu comme si je te disais que sur ton PC, tu avais installé un jeu ou un navigateur Internet et qu’après redémarrage le logiciel disparaissait … c’est tout simplement pas normal :)

      Faudrait faire le test, mais avant de le faire, penses à faire une sauvegarde histoire de ne pas avoir à tout réinstaller dans le cas où le reboot du Raspbian se passait mal !
      N’hésites pas à repasser si tu as besoin d’aide :)

      @+

  35. Salut !

    J’ai un petit souci, j’ai réinstaller Subsonic 6 sur une debian 8.4 – amd64,sur un réseau local.
    J’ai accès à l’interface de subsonic, mais quand je scan mon dossier music (/home/subsonic/music) il me trouve bien tout les dossiers dans le répertoire « music » mais le contenue des dossier (les fichiers music) ne sont pas afficher dans subsonic, mais le plus étrange et que c’est aléatoire, j’en ai qui sont afficher et donc que je peu écouter sans problème mais d’autre rien, j’ai juste un répertoire vite sous subsonic, alors en terminal je les vois bien.

    Au début je pensé que c’était une histoire de droit du coup pour tester j’ai fait un chmod -R 777 sur le répertoire « music » est j’ai re-scanner le répertoire sous subsonic mais rien toujours le même problème. :/

    Tu aurais une idée ?

    Merci

    • Hello Carpine,

      Désolé pour ma réponse tardive, mais je n’ai pas eu une seconde à moi ces derniers temps …
      Tu as fini par résoudre ton problème avec Subsonic ou tu es toujours en recherche d’une solution ?
      N’hésites pas à revenir vers moi si besoin, je t’assure que je saurais être plus réactif cette fois-ci =)

      @+

N'hésitez pas, laissez un commentaire — DoFollow activé sur ce site —


« »