Mediatomb
Dieser Artikel wurde für die folgenden Ubuntu-Versionen getestet:
Du möchtest den Artikel für eine weitere Ubuntu-Version testen? Mitarbeit im Wiki ist immer willkommen! Dazu sind die Hinweise zum Testen von Artikeln zu beachten.
Zum Verständnis dieses Artikels sind folgende Seiten hilfreich:
MediaTomb ist ein freier UPnP-Medienserver (Universal Plug and Play), der es erlaubt Mediendaten wie Filme und Musik über das Netzwerk an UPnP-fähige Geräte zu verteilen. Dazu zählen auch Geräte, die als DLNA-fähig gekennzeichnet sind. Da in letzter Zeit vermehrt DLNA-fähige Geräte, wie Fernseher, Internetradios oder Spielekonsolen (z.B. PS3), auf den Markt kommen, bietet MediaTomb eine komfortable Lösung zur Übertragung von Musik oder Filmen vom Computer auf das jeweilige Gerät.
Installation¶
MediaTomb befindet sich in den offiziellen Paketquellen. Folgende Pakete müssen installiert werden[1]:
mediatomb (universe)
Befehl zum Installieren der Pakete:
sudo apt-get install mediatomb
Oder mit apturl installieren, Link: apt://mediatomb
Einstellungen¶
Die Einstellungen des Servers lassen sich mit einen Editor bearbeiten. Eine Anpassung kann nötig sein, wenn es zu Problemen mit der Verbindung der UPnP-Geräten kommt. Dazu muss man mit einem Editor[3] mit Root-Rechten[4] die Datei /etc/mediatomb/config.xml editieren.
Eine genaue Beschreibung der einzelnen Optionen findet man auf der Homepage von MediaTomb 🇬🇧.
Server starten/stoppen¶
MediaTomb wird automatisch beim Hochfahren des Computers gestartet. Er kann aber auch manuell über folgende Befehle im Terminal[2] gestartet werden:
Server starten:
sudo /etc/init.d/mediatomb start
Server stoppen:
sudo /etc/init.d/mediatomb stop
Server neustarten:
sudo /etc/init.d/mediatomb restart
Benutzeroberfläche von MediaTomb |
Bedienung¶
Nach erfolgreichem Start des Servers kann man das Programm aufrufen. Daraufhin startet ein Browser und öffnet die Weboberfläche von MediaTomb. Alternativ erreicht man das auch durch Aufruf der Adresse http://localhost:49152
. Erhält man die Meldung
"MediaTomb UI is disabled. Check your configuration."
muss in der Datei /etc/mediatomb/config.xml der Eintrag ui enabled="no"
auf "yes
" gesetzt werden. In den Zeilen darunter lässt sich festlegen, ob der Zugang nur per Benutzernamen und Passwort möglich sein soll. Dazu wird "accounts enabled
" auf "yes
" gesetzt und bei "user
" und "password
" entsprechend ein Benutzername und ein Passwort eingesetzt.
Die Oberfläche ist in 3 Bereiche aufgeteilt. Links oben kann man zwischen den Anzeigemodi Database und Filesystem wechseln. Links unten findet man eine Verzeichnisstruktur in Baumdarstellung. Der große Bereich rechts beinhaltet die jeweiligen Inhalte und die Schaltflächen zur Interaktion mit dem Programm.
Anzeigemodus Database |
Anzeigemodus Database¶
In diesem Modus werden alle freigegebenen Objekte angezeigt. Auf diese kann nun mit einem UPnP-fähigen Gerät über das Netzwerk zugegriffen werden.
Zur Interaktion mit dem Programm stehen verschiedene Schaltflächen zur Verfügung. Die wichtigsten sind:
"Add item": Fügt ein neues Objekt hinzu
"Edit": Mit dieser Schaltfläche können verschiedene Informationen des Objekts bearbeitet werden.
"Remove": Deaktiviert die Freigabe des jeweiligen Objekts und entfernt es aus der Datenbank.
"Remove all": Entfernt das Objekt und alle Referenzen aus der Datenbank
Anzeigemodus Filesystem |
Anzeigemodus Filesystem¶
Dieser Modus zeigt das Dateisystem des verwendeten Computers an. Über die Baumstruktur kann man zu den Objekten navigieren, die freigegeben werden sollen. Dabei können sowohl einzelne Dateien oder auch ganze Ordner freigegeben werden. Für die Ordnerfreigabe besteht zusätzlich die Möglichkeit, eine automatische Aktualisierung des Inhalts zu aktivieren (autoscan). Dadurch wird der Inhalt des betroffenen Ordners innerhalb eines frei definierbaren Zeitintervalls auf Veränderungen überprüft.
Folgende Schaltflächen stehen zur Verfügung:
"Add": Fügt eine Datei oder einen Ordner der Datenbank hinzu und gibt sie frei.
"Add as autoscan dir": Fügt einen Ordner der Datenbank hinzu und aktiviert die automatische Aktualisierung.
Problembehebung¶
OpenVPN¶
Unter Umständen kann es zu Problemen kommen, wenn Mediatomb und OpenVPN gleichzeitig installiert sind. Das Problem äußert sich darin, dass die Weboberfläche von Mediatomb zwar erreichbar ist, der eigentliche UPNP Service aber nicht. Die Ursache ist hierfür, dass Mediatomb den UPNP Service scheinbar an die Netzwerkschnittstelle tun0
, welches von OpenVPN angelegt wird, bindet. Stattdessen soll Mediatomb sich an die übliche Netzwerkschnittstelle binden, normalerweise also eth0
oder wlan0
. Ein einfacher Eingriff in die /etc/default/mediatomb des Mediatomb löst das Problem:
... # The network interface for MediaTomb to bind to and for which the multicast # routing entry should be added; "" if the route shouldn't be added at all. # For example: INTERFACE="eth0" INTERFACE="eth0" ...
Mediatomb startet nicht beim Start des Rechners¶
Es kann mitunter sein, dass die Netzwerkkarte beim Starten von Mediatomb noch nicht bereit ist. Zu Erkennen ist das in der Logdatei:
ERROR: main: upnp error -117 ERROR: upnp_cleanup: UpnpUnRegisterRootDevice failed
Um das Problem zu lösen, kann man einfach Mediatomb später starten lassen. Dies erreicht man, in dem die alten Links in den /etc/rc*.d Ordnern entfernt werden und neue mit der Zahl 99
eingefügt werden:
sudo update-rc.d -f mediatomb remove #entfernen der alten Links sudo update-rc.d mediatomb defaults 99 #setzen der neuen Links
Nun startet Mediatomb wieder einwandfrei beim Hochfahren des Medienservers.
Firewall¶
Die Ports für MediaTomb können bei aktiver ufw auf folgende Weise zugelassen werden:
sudo ufw allow 1900/tcp sudo ufw allow 1900/udp sudo ufw allow 49152/tcp sudo ufw allow 49152/udp
Workaround für Samsung Smart TV 2012¶
Bei TVs der Marke Samsung wird der RFC2396 verletzt, was dazu führt, dass mit allshare nicht auf den Mediatomb-Server zugegriffen werden kann. Um dieses Problem zu umgehen muss Mediatomb mit einem zusätzlichen Patch-File kompliert werden. Das Patchfile kann hier ⮷ herunterladen werden (Dateiname sollte mediatomb-urifix.patch sein). Am einfachsten ist es, wenn man das File unter /tmp/ speichert (diese Anleitung geht generell davon aus, dass alles unter /tmp/ gemacht wird). Anschließend muss man das Patchfile verändern, dass es so aussieht (es muss Zeile 1 gelöscht werden und die Zeile 2 und 3 müssen leicht verändert werden):
--- a/tombupnp/upnp/src/genlib/net/uri/uri.c +++ b/tombupnp/upnp/src/genlib/net/uri/uri.c @@ -1042,7 +1042,8 @@ out->path_type = REL_PATH; } - if( ( ( begin_hostport + 1 ) < max ) && ( in[begin_hostport] == '/' ) + //parse hostport only if scheme was found + if( ( begin_hostport > 0 ) && ( ( begin_hostport + 1 ) < max ) && ( in[begin_hostport] == '/' ) && ( in[begin_hostport + 1] == '/' ) ) { begin_hostport += 2; @@ -1059,6 +1060,12 @@ out->hostport.text.size = 0; out->hostport.text.buff = 0; begin_path = begin_hostport; + + //remove excessive leading slashes (fix for Samsung Smart TV 2012) + while( ( ( begin_path + 1 ) < max ) && ( in[begin_path] == '/' ) && ( in[begin_path + 1] == '/') ) { + begin_path++; + } + } begin_fragment =
Nachdem das Patchfile editiert wurde, muss man noch die notwendigen Pakete zum Kompilieren herunterladen (als root):
apt-get install dpkg-dev devscripts fakeroot apt-get build-dep mediatomb apt-get source -d mediatomb cd /tmp dpkg-source -x mediatomb_0.12.1-0ubuntu4.dsc
Nun muss das Patchfile in die Sourcen integriert werden:
echo mediatomb-urifix.patch >> mediatomb-0.12.1/debian/patches/series cp mediatomb-urifix.patch mediatomb-0.12.1/debian/patches/
Jetzt können die Sourcen kompiliert werden:
cd mediatomb-0.12.1/ dpkg-buildpackage -rfakeroot
Mediatomb ist jetzt fertig kompiliert und kann installiert werden. Davor muss allerdings der ggf. bereits installierte Mediatomb Server deinstalliert werden (VORSICHT: hierbei geht u. a. die config.xml verloren – diese sollte vorher gesichert werden):
apt-get remove mediatomb
Um Mediatomb jetzt zu installieren geht man folgendermaßen vor:
cd /tmp dpkg -i mediatomb-common_0.12.1-0ubuntu4_amd64.deb mediatomb-daemon_0.12.1-0ubuntu4_all.deb mediatomb_0.12.1-0ubuntu4_all.deb
Quellen:
Links¶
Intern¶
Alternative DLNA-Server:
Musik verwalten - weitere Möglichkeiten, um einen Medienserver umzusetzen
Extern¶
Projektseite 🇬🇧
Anleitung für Mediatomb und PS3 🇩🇪 - Blogbeitrag, 11/2009
ps3mediaserver 🇬🇧 - alternativer DLNA-Media-Server
Allgemeine Information von Wikipedia: