NAS- und Netzwerklaufwerke mit Home Assistant einbinden

Home Assistant kann Musik und Videos abspielen und als Koordinator für viele Geräte wie Amazon Echo, AV-Receiver etc. arbeiten. Wie bringt man aber die Mediensammlung vom NAS- oder Netzlaufwerk in Home Assistant? Hier habe ich eine Anleitung.
Bitte beachte: Dieser Beitrag ist mehr als 3 Jahre alt. Manche Links, Preise, Produkte und Aussagen sind vielleicht nicht mehr aktuell!

Viele von euch haben große Mediensammlungen auf NAS-Laufwerken. Leider gibt es in Home Assistant bislang noch keinen einfachen und direkten Weg, Windows-/Samba-Netzlaufwerke zu verbinden und die Daten daraus in Home Assistant verfügbar zu machen. Mit ein paar kleinen Einstellungen geht es aber relativ einfach und schnell.

Zunächst solltet ihr die gewünschten Freigaben auf eurem NAS oder File-Server einrichten und sicherstellen, dass diese von anderen Geräten aus erreichbar sind. Das hängt natürlich von euren Systemen ab und weil es so viele Möglichkeiten gibt, kann das nicht Teil der Anleitung sein.

Die eigentliche Anbindung des Netzwerk-Shares an Home Assistant geht über den Umweg eines Shell-Commands. Damit kann man Linux-Befehle aus Home Assistant heraus ausführen. In diesem Fall ist der mount Befehl, mit dem wir das Netzlaufwerk verbinden.

In eurer configuration.yaml tragt ihr Folgendes ein:

shell_command:
  mount_music_folder: mkdir -p /media/musik;mount -v -t cifs -o vers=1.0,noserverino,user=media,password=media123,domain=WORKGROUP,sec=ntlm //192.168.178.2/media/musik /media/musikCode-Sprache: JavaScript (javascript)

Zerlegen wir mal den gesamten Befehl:

Melde dich zu meinem Newsletter an!

Du kannst dich jederzeit abmelden und ich verspreche: Kein Spam!

shell_command: sagt Home Assistant einfach, dass diesen Linux-Befehl als Service zur Verfügung stehen soll. Services kann man dann in Automationen und Skripts verwenden. Dazu später noch mehr.

mount_music_folder – ist ein beliebiger Name für den neuen Service. Man könnte es auch musiklaufwerk_verbinden nennen oder Ähnliches.

mkdir -p – legt zunächst ein Verzeichnis in Home Assistant an, das bei erfolgreichem mount-Befehl den Inhalt des Netzlaufwerks wiederspiegelt. Das -p sagt, dass der Befehl keinen Fehler ausgeben soll, wenn das Verzeichnis schon vorhanden ist.

/media/musik: Damit Home Assistant die Daten auch in seinem Medien-Verzeichnis erkennt, müssen wir das Netzlaufwerk in diesem mounten. Ich möchte, dass meine Musik im Unterverzeichnis /media/musik verbunden wird

mount – v -t cifs -o vers=1.0, noserverino – der eigentliche Mountbefehl, der Samba/Windows-Shares mit der Samba-Version 1.0 verbindet. Die Version 1.0 (vers=1.0) ist meist am unproblematischsten, aber auch am langsamsten. Andere Werte wären vers=2.0 oder vers=3.0. Siehe auch: mount.cifs › Wiki › ubuntuusers.de

user=media,password=media123,domain=WORKGROUP,sec=ntlm – beim user wird ein Username angegeben, der Zugriffserlaubnis auf euer Netzlaufwerk hat und mit password=media123 das zugehörige Passwort. sec=ntlm definiert die Hashing-Methode des Passworts.

//192.168.178.2/media/musik – ist der UNC-Pfad zu eurem NAS oder Server, in dem die gewünschten Daten liegen und dieser wird im anfangs erwähnten und angelegten Verzeichnis /media/musik in Home Assistant gemountet

Ihr solltet auf jeden Fall vorher probieren, ob ihr mit dem Netzwerk- oder UNC-Pfad und dem zugehörigen User/Passwort Zugriff auf euer Netzlaufwerk bekommt. Man kann das auch von der Home Assistant Shell mit dem kompletten Befehl testen. Verläuft das positiv, steht dem Einsatz nichts mehr im Wege.

Damit wird das Verzeichnis aber noch nicht gemountet. Damit das überhaupt geschieht, muss der Service mount_musik_folder – oder wie ihr ihn auch immer genannt habt, ausgeführt werden, und zwar am besten immer dann, wenn Home Assistant neu startet.

Home Assistant Entwickler Werkzeuge
Den neuen Service in den Entwickler-Tools testen

Zunächst könnt ihr den Service in den Entwickler-Tools -> Dienste testen, indem ihr nach dem Dienst, in meinem Fall mount_music_folder sucht und dann Dienst ausführen auswählt. Nun sollte der Inhalt eures Netzlaufwerks in Home Assistant im Medien Browser zu finden sein.

Home Assistant Medien-Browser
Die Verzeichnisse des NAS-Laufwerks im Media-Browser von Home Assistant

Nun müssen wir Home Assistant nur noch beibringen, diesen Dienst auch beim Neustart auszuführen. Dazu legen wir eine Automatisierung an:

Zunächst vergeben wir einen Namen für die Automatisierung. Bei mir heißt sie Mount Unraid NAS

Home Assistant Automatisierung anlegen

Der Auslöser für die Automatisierung ist der Start von Home Assistant. Und als Aktionstyp soll unser Service mount_music_folder ausgeführt werden.

Home Assistant Aktionen - Services ausführen

Ich habe mehrere Laufwerke, die beim Start eingebunden werden sollen. Diese kann man einfach nacheinander angeben, muss sie aber vorher in der configuration.yaml genau so definieren, wie in unserem Beispiel, also in der Form:

shell_command:
  mount_music_folder: ...
  mount_video_folder: ...
  mount_photos_folder: ...Code-Sprache: YAML (yaml)

Nun noch die Automatisierung speichern und ab jetzt werden bei jedem Start von Home Assistant eure Netzlaufwerke in Home Assistant verfügbar gemacht.

Melde dich zu meinem Newsletter an!

Du kannst dich jederzeit abmelden und ich verspreche: Kein Spam!


Die mit Sternchen (*) gekennzeichneten Verweise sind sogenannte Provision-Links. Als Amazon-Partner verdiene ich an qualifizierten Verkäufen.Wenn du auf so einen Verweislink klickst und über diesen Link einkaufst, bekomme ich von deinem Einkauf eine Provision. Für dich verändert sich der Preis nicht und du unterstützt damit meine Arbeit. Preisänderungen und Irrtümer vorbehalten.

7 Kommentare

  1. Moin Moin,

    leider bei mir nicht erfolgreich. Es wird nur ein leerer Ordner Musik angezeigt. 🙁

    Folgenden Eintrag habe ich erstellt:
    shell_command:
    mount_musik_folder: mkdir -p /media/Musik;mount -v -t cifs -o username=HomeAssistant,password=*** //192.168.178.11/Media/Musik /media/Musik

    Irgendeine Idee?

  2. Ich hatte ähnliche Schwierigkeiten wie Sven. Die Gretchenfrage ist aber; warum die Mühe?
    Es gibt eine Integration DLNA Media Server, die das Geschehen zumindest in bestimmten Fällen auch abzudecken scheint.

  3. Hallo, bei mir hat die Einbindung etwas gedauert. Ein Grund war, das mein Passwort eine schließende Klammer enthielt. Es ist vielleicht sicherer, wenn das eigene Passwort in Hochkommas geschrieben wird. Aus dem Parameter „user“ habe ich „username“ gemacht (siehe: https://wiki.ubuntuusers.de/mount.cifs/#Benutzer-und-Passwort ), und einen ganzen Teil der Parameter weggelassen.

    Der Test mit Entwicklerwerkzeuge –> Dienste schien zu funktionieren, der Button wurde kurz grün und dann wieder blau. Aber es wurden keine Ordner unter Media hinzugefügt. Wenn man das ganze Schritt für Schritt im Terminalfenster testet, kann man zwar die die gemounteten Ordner sehen, aber es erscheint trotzdem kein Ordner unter Media.
    Wenn das soweit klappt, dann einfach mal den Host komplett neu starten, dann hat es bei mir auch funktioniert.

    Test im Terminalfenster: 1. Schritt: mkdir -p /media/musik (den braucht man nur einmal)
    und dann „mount -v -t cifs -o username=musikUser,password=’Passwort)‘ //192.168.178.5/music /media/musik“

    in der configuration.yaml steht jetzt bei mir (die 2. Zeile hinteereinander):
    #https://nachbelichtet.com/nas-und-netzwerklaufwerke-mit-home-assistant-einbinden/
    shell_command:
    musiklaufwerk_verbinden: mkdir -p /media/musik;mount -v -t cifs -o username=musikUser,password=’Passwort)‘ //192.168.178.5/music /media/musik

    Vielen Dank für die Anleitung, vielleicht helfen die Eränzungen auch anderen Nutzern.

    • Genial, bei mir hat es vorher mit der Anleitung nicht fuktioniert, keine Dateien im Verzeichnis. Jetzt läuft alles, es werden alle Verzeichnisse angezeigt
      Vielen Dank, hat mir viel Arbeit erspart

Schreibe einen Kommentar zu Edward LyttonAntworten abbrechen

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert