Old:Installare un Media Server per lo streaming della musica

Da Guide@Debianizzati.Org.
Vai alla navigazione Vai alla ricerca
Emblem-important.png Attenzione. Questa guida è obsoleta. Viene mantenuta sul Wiki solo per motivi di natura storica e didattica.


Introduzione

Chiunque abbia una nutrita collezione musicale e una rete di PC si sarà imbattuto nel problema di raggiungere i suoi file MP3 o OGG da tutti i client della rete, o di permettere agli amici l'ascolto della musica da internet.

Un metodo molto semplice per realizzare tutto questo è di installare un Media Server sul PC dove risiede la collezione musicale. In questa guida la scelta è caduta sul Media Server Sockso (http://sockso.pu-gh.com/) perchè è open source, perchè non necessita di alcuna installazione e perchè è un software leggero e facilmente configurabile. I client che lo utilizzano come Media Server non hanno bisogno di alcun player audio, dato che Sockso integra nella sua interfaccia web un comodo Audio Flash Player.

Installazione

Per poter funzionare Sockso richiede la presenza della Java Machine di Sun:

# apt-get install sun-java6-bin sun-java6-fonts sun-java6-jre unzip 

Configurato Java possiamo scaricare la versione più recente di Sockso dai server di Google. Al momento della stesura di questa guida la versione più recente è la 1.2.4; abbiate l'accortezza di sostituire questo numero di versione con quello più aggiornato che troverete sul sito ufficiale del progetto.

# wget http://sockso.googlecode.com/files/sockso-1.2.4.zip 

Ora scompattiamo il pacchetto scaricato e creiamo una directory dove installarlo:

# unzip sockso-1.2.4.zip
# mkdir /usr/share/sockso
# cp -R /home/samiux/sockso-1.2.4/* /usr/share/sockso/ 
# mkdir /var/sockso
# chmod -R 0755 /var/sockso 

Utilizzo

A questo punto siamo pronti per avviare Sockso dalla console del nostro server:

# sh /usr/share/sockso/linux.sh --nogui --datadir /var/sockso

La prima cosa da fare è quella di aggiungere la directory dove è contenuta la nostra collezione musicale:

#SockSo#> coladd /home/ferdy/musica
#SockSo#> coladd /home/cesca/mp3 

Sockso manterrà monitorate queste directory e aggiungerà/rimuoverà automaticamente i files e le sottodirectory, ad ogni cambiamento apportato dagli utenti.

Se desiderate vedere quali directory sono già configurate all'interno di Sockso utilizzate il comando:

collist

Se invece volete cancellare una o più directory, utilizzate il comando:

coldel

Aggiungere utenti a Sockso

Sockso gestisce i login di utenti diversi, che potranno salvare così le loro playlist e le loro impostazioni personali. Per aggiungere un utente a Sockso bisogna usare il comando:

#SockSo#> useradd nome_utente password_utente utente@gmail.com

Per uscire dalla shell di Sockso basta il comando:

exit

Configurare Sockso come demone

Per configurare Sockso come demone che si avvii al boot del nostro server occorre innanzitutto copiare nella corretta posizione i due script forniti dal programma:

# cp /usr/share/sockso/scripts/init.d/sockso /etc/init.d/sockso.pl 

Creiamo poi uno script di avvio:

# nano /etc/init.d/sockso

che contenga le seguenti righe:

#!/bin/bash
perl /etc/init.d/sockso.pl $1
exit 0

Quindi modifichiamo il file sockso.pl come segue:

# nano /etc/init.d/sockso.pl
use constant SOCKSO_DIR => "/usr/share/sockso/";

system( 'sh linux.sh --nogui --datadir /var/sockso > /dev/null 2>&1 &' ); 

Infine rendiamo eseguibili i due script appena creati e creiamo i symlink corretti:

# chmod +x /etc/init.d/sockso
# chmod +x /etc/init.d/sockso.pl
# update-rc.d sockso defaults

Da questo momento in poi potremo avviare e fermare il nostro Media Server come ogni altro demone di Debian:

# /etc/init.d/sockso start
# /etc/init.d/sockso stop

Utilizzare il Media Server

Per utilizzare Sockso basta puntare il nostro browser all'indirizzo:

http://ip.de.nostro.server:4444

e fare login con una delle credenziali create in precedenza.

Configurare le proprietà di Sockso

Il comportamento di Sockso può essere facilmente controllato dalla shell stessa del programma.
Innanzitutto fermiamo, se lo abbiamo avviato, il deomone di Sockso:

/etc/init.d/sockso stop

Poi avviamolo in modalità interattiva, per entrare nella sua command line:

sh /usr/share/sockso/linux.sh --nogui --datadir /var/sockso

Il prompt dei comandi del nostro server si è ora trasformato in:

#SoCkSo#>

e Sockso è pronto a ricevere dei comandi.
Per modificare e configurare le proprietà del server viene utilizzato il comando:

#SoCkSo#> propset nome_proprietà nuovo_valore

Le proprietà attualmente supportate sono:

Interfaccia web

  • www.title: text (Il titolo dell'interfaccia web)
  • www.tagline: text (Il sottotitolo dell'interfaccia web)
  • www.disableDownloads: yes/no
  • users.requireLogin: yes/no
  • users.disableRegistration: yes/no
  • www.flashPlayer.dontFilterMp3s: yes/no (limita il flash player agli MP3)
  • www.imageflow.disable: yes/no
  • www.similarArtists.disable: yes/no
  • www.covers.disable: yes/no
  • www.covers.disableRemoteFetching: yes/no (Abilita o meno il download delle cover da internet)
  • www.skin: text (Imposta una skin per l'interfaccia web)

Server

  • server.host: ip address
  • server.host.lastUpdated: number (unix timestamp)
  • server.port: number

Streaming

  • stream.requireLogin: yes/no (Richiede il login per lo streaming. Questa proprietà richiede che la proprietà users.requireLogin sia impostata a yes)

Uploads

  • uploads.enabled: yes/no
  • uploads.requireLogin: yes/no
  • uploads.collectionId: number

Browsing

  • browse.folders.enabled: yes/no
  • browse.folders.only: yes/no
  • browse.popularTracks.count: number
  • browse.topArtists.count: number
  • browse.recentTracks.count: number
  • browse.latestArtists.count: number
  • browse.latestAlbums.count: number
  • browse.latestTracks.count: number

Logging

  • log.request.enable: yes/no

Playback

  • playlists.random.trackLimit: number

Application

  • app.startMinimized: yes/no
  • app.confirmExit: yes/no

Collection

  • collman.scan.onStart: yes/no (Esamina le collezioni all'avvio?)
  • collman.scan.interval: number (Minuti che intercorrono tra un esame e l'altro delle collezioni)
  • collman.artists.removePrefixes: text
  • covers.artist.file: text
  • covers.album.file: text
  • covers.cacheLocal: yes/no
  • covers.defaultWidth: number
  • covers.defaultHeight: number
  • covers.xspf.display: album/artist

Misc

  • version.checkDisabled: yes/no (Verifica aggiornamenti?)


Per impostare, ad esempio, un nuovo titolo per l'interfaccia web di Sockso basterà quindi dare il comando:

#SoCkSo#> propset www.title Nuovo Titolo

Al termine delle modifiche usciamo dalla shell di Sockso:

#SoCkSo#> exit

e ricordiamoci di far ripartire il demone:

# /etc/init.d/sockso start