Mit der Installation eines eigenen DLNA-Servers können Multimedia-Inhalte z.B. netzwerkfähige Fernsehern zur Verfügung gestellt werden.

DLNA steht für 'Digital Living Network Alliance'. Darin haben sich verschiedene Hersteller zusammengeschlossen, um das Zusammenspiel zwischen dem klassischen PC-Bereich, der Konsumerelektronik und z.B. Smartphones zu verbessern. Ziel ist es, die Nutzung digitaler Medien wie Musik, Fotos oder Filme im ganzen Haus zu ermöglichen.

Warum brauche ich nun auf einmal einen eigenen DLNA-Server? Weil ich mir einen neuen, netzwerkfähigen Fernseher (Samsung LE32C650) zugelegt habe, der meine Aufnahmen, Filme, Musik und Bilder wunderbar abspielen/darstellen kann. Der Fernseher hat natürlich auch USB-Ports, an die man einen Stick oder eine mobile Festplatte anschließen kann, aber wofür habe ich denn einen Netzwerkanschluß am Fernseher und einen ständig erreichbaren Server, auf dem ja die ganzen Dateien gespeichert sind? Leider kann ich auf der Samsung keine freigegebenen Verzeichnisse verbinden, sondern er sucht eben nach DLNA-fähigen Geräten im Netzwerk. Ich hab zwar auch eine Fritzbox, an die man eine USB-Platte anschließen kann und die auch DLNA-fähig ist, aber das bedeutet ja auch wieder hin- und herkopieren. Also baue ich mir meinen eigenen DLNA-Server.

Referenzierte Dokumente:

Ein Thread aus www.hifi-forum.de

Ubuntu-Wiki, wo man immer fündig wird Lächelnd

MiniDLNA ist eine freie Software, die man auf SourceForge herunterladen kann. Es stehen zwei Archive bereit, _static.tar.gz und _src.tar.gz. 'Static' enthält die vorkompilierte Version, während die src-Version noch kompiliert werden muß. Ich nutze die vorkompilierte Version. Dafür müssen noch folgende Pakete installiert werden:

  • libexif12
  • libjpeg62
  • libid3tag0
  • libflac8
  • libvorbisfile3
  • sqlite3
  • libavformat52
  • libuuid1

Alle Aktionen müssen mit root-Rechten durchgeführt werden, daher werden wir erstmal root mit 'sudo -i'. Nun installieren wir die Pakete:

# apt-get install libexif12 libjpeg62 libid3tag0 libflac8 libvorbisfile3 sqlite3 libavformat52 libuuid1

Jetzt entpacken wir das heruntergeladene Archiv direkt ins Stammverzeichnis (die einzelnen Dateien werden automatisch in die richtigen Ordner entpackt):

# tar -C / -xzf minidlna_1.0.20_static.tar.gz

Im Archiv ist bereits eine Konfigurationsdatei enthalten, sie befindet sich in /etc. Hier passe ich den Namen meines DLNA-Servers an und lege die Verzeichnisse fest, in denen nach Filmen, Musik und Bildern gesucht wird:

media_dir=A,/home/media/Musik
media_dir=V,/home/media/Filme
media_dir=P,/home/media/Bilder

friendly_name=Ubuntu DLNA Server

Der Server kann nun bereits mit

# usr/sbin/minidlna -f etc/minidlna.conf

gestartet werden. Ich möchte aber natürlich, daß der DLNA-Server beim Systemstart automatisch als Service mitgestartet wird und im Bedarf mit 'start' 'stop' und 'restart' gesteuert werden kann. Das folgende Script findet man im SRC-Archiv. Ihr könnt es aber auch einfach hier rauskopieren oder Ihr nehmt den Download unten und speichert es als minidlna in /etc/init.d

#!/bin/sh

# chkconfig: 345 99 10
# description: Startup/shutdown script for MiniDLNA daemon
#
# $Id: minidlna.init.d.script,v 1.2 2009/07/02 00:33:15 jmaggard Exp $
# MiniUPnP project
# author: Thomas Bernard
# website: http://miniupnp.free.fr/ or http://miniupnp.tuxfamily.org/

MINIDLNA=/usr/sbin/minidlna
ARGS='-f /etc/minidlna.conf'

test -f $MINIDLNA || exit 0

. /lib/lsb/init-functions

case "$1" in
start)  log_daemon_msg "Starting minidlna" "minidlna"
start-stop-daemon --start --quiet --pidfile /var/run/minidlna.pid --startas $MINIDLNA -- $ARGS $LSBNAMES
log_end_msg $?
;;
stop)   log_daemon_msg "Stopping minidlna" "minidlna"
start-stop-daemon --stop --quiet --pidfile /var/run/minidlna.pid
log_end_msg $?
;;
restart|reload|force-reload)
log_daemon_msg "Restarting minidlna" "minidlna"
start-stop-daemon --stop --retry 5 --quiet --pidfile /var/run/minidlna.pid
start-stop-daemon --start --quiet --pidfile /var/run/minidlna.pid --startas $MINIDLNA -- $ARGS $LSBNAMES
log_end_msg $?
;;
*)      log_action_msg "Usage: /etc/init.d/minidlna {start|stop|restart|reload|force-reload}"
exit 2
;;
esac
exit 0

Damit der DLNA-Server bei jedem Systemstart mitgestartet wird, geben wir noch zwei Befehle ein:

# chmod 755 /etc/init.d/minidlna

# update-rc.d minidlna defaults

Der Server kann jetzt mit '/etc/init.d/minidlna start' gestartet werden. Viel Spaß mit Eurem Eigenen Medienserver!

Download minidlnaminidlna Startup-Script

Zusätzliche Informationen