NAS-Laufwerk einbinden

Olaf.C

New member
Hallo Leute, ich versuche seit 2 Tagen ein NAS-Laufwerk in mein Home Assistant einzubinden. Das Internet habe ich gefühlt komplett gelesen - auch die englischen Seiten.

Hass IO auf einem Raspi 4, Qnap NAS - Benutzer mit entsprechenden Zugriffsrechten angelegt.

config.yaml:
shell_command:
link_nas_share: mkdir -p /media/ha;mount -t cifs -o vers=3.0,noserverino,username=homeass,password=XXXXX, //192.168.XXX.XX/Multimedia/Kamera

Der Ordner "ha" wird angeleget, ist aber leer.
Die Log-Datei:
Error running command: `mkdir -p /media/ha;mount -t cifs -o vers=3.0,noserverino,username=homeass,password=XXXXXXX, //192.168.178.38/Multimedia/Kamera`, return code: 1 NoneType: None

Die "vers=" habe ich von 1-3 versucht, "mount -t" "und mount -v -t" brachten auch keinen Erfolg.

Ich möchte das NAS als "Recorder" für eine Kamera laufen lassen und mit HA auf die Aufnahmen zugreifen - und später noch auf andere Ordner des NAS.

Über Hilfe von euch freue ich mich. HA ist wirklich klasse, aber manchmal etwas speziell - oder ich bin beim Lesen des Internets in eine völlig falsche Richtung gegangen.
 
Es macht wenig Sinn oben die Command Line zu "XXX"en und unten dann in Klartext zu setzten.
Darüberhinaus fehlt nach meiner Ansicht der Mountpoint in Deinem Befehl

Die "Manuals" zu mount sagen: mount [-t vfstype] [-o options] device dir
Versuch es also mal mit : mount -t cifs -o vers=3.0,noserverino,username=homeass,password=XXXXX //192.168.178.38/Multimedia/Kamera /media/ha
 
Vielen Dank für die Antworten!!

OK, das mit dem PW etc. war etwas dämlich.

mein letzer Versuch:
shell_mount_movies: mkdir -p /media/movies;mount -t cifs -o vers=3.0,noserverino,username=homeass,password=XXX //192.168.178.38/Multimedia/Kamera /media/movies

dazu der Log:
Error running command: `mkdir -p /media/movies;mount -t cifs -o vers=3.0,noserverino,username=homeass,password=XXX //192.168.178.38/Multimedia/Kamera /media/movies`, return code: 111 NoneType: None

Immerhin ein anderer Fehler. Ich habe übrigens die aktuellste Version von HA
 
Hast Du das Kommando schon einmal direkt auf der Shell und zwar der vom OS (Port 22222), nicht der vom Core (Port 22) aufgerufen?
 
Das würde ich ausprobieren, wenn ich wüsste wie. Meine Linux-Kentnisse sind so etwa Grundschule 4te Klasse. Immerhin habe ich den File-Editor dazu gebracht mir mehr als die config zu zeigen.
 
Vom Windows-Rechner mit putty am Linux-Rechner anmelden und dann auf der Linux-Konsole den Befehl "mount -t cifs - ...." eingeben.
 
Vorher muss aber der Mountpunkt erzeugt werden! Also genau der Befehl wie er in der Konfiguration steht.
Aber so einfach ist der Zugang über ein Terminalprogramm nicht. Es muss noch der Port 22222 freigegeben werden.
 
Wenn es von Linux zu Linux geht, würde ich ja eher zu NFS tendieren... Hab grade mal nachgebaut (via HA-Web-Terminal), auch immer "Permission denied", da kommen nichtmals Authentifizierungsanfragen beim NAS an (via SMB, via NFS geht es aber auch nicht), somit wird es "vermutlich" ein Problem bzgl. lokaler Berechtigungen sein (ggf. ein Docker-Ding)...

Hab jetzt mal kurz geschaut und "möglicherweise"... trifft das hier zu:
https://docs.docker.com/engine/reference/run/#runtime-privilege-and-linux-capabilities

Da ist etwas weiter unten z.B. die Rede von: "--cap-add" (oder auch "--privileged") und noch ein Stückchen weiter darunter:
SYS_ADMINPerform a range of system administration operations.

Weiter unten gibt es dann noch ein Beispiel bzgl. mount (zwar in Kombi mit Fuse, aber das sei mal dahingestellt)...:

1676726017330.png

Davon ausgehend würde ich mal sagen, dass dem Container ggf. sowas wie "--cap-add SYS_ADMIN" fehlen könnte. Dürfte vermutlich insofern ein Problem sein, als das man das ganze vermutlich nicht einfach über Docker gestartet hat, sondern dieses HAOS-Image genommen hat. Wie die das dort geregelt haben.... keine Ahnung.... vllt geht es auch einfach nur nicht als root-User über die Shell (was ich schon merkwürdig finden würde, aber wer weiss....). Ist jetzt aber auch nur eine Vermutung, kann auch alles ganz anders sein... 😅
 
Noch eine Idee:
Füge hinzu oder ändere einmal den "logger:" Eintrag in Deiner configuration.yaml und starte dann neu:
Code:
logger:
  default: debug

So wird alles aber ziemlich lang. Ich weiß nicht in welchem Bereich die log-Meldung zu den shell-Befehlen sind, dann könnte man das darauf eingrenzen.

Noch eine Idee: Ich weiß nicht mehr, was Du für ein Passwort eingetragen hattest. Hat das zufällig irgendwelche Sonderzeichen, die in einer Shell eine Bedeutung haben?
 
bei dem Versuch auf per SSH auf den Port 22222 zu kommen, habe ich mir fast alles zerschossen. Wenn ich schon mal dabei bin habe ich den Raspi in ein schönes Gehäuse (Argon mit SSD) gebastelt und die Kiste läuft tatsächlich wieder. Nur das NAS-Laufwerk lässt sich nicht mounten.

Im PW ist ein @, das dürfte aber nicht das Problem sein. Bei früheren Versuchen - raspi mit LMS - wurde das NAS über fstab und mit NFS gemountet. Das werde ich morgen ausprobieren - danke blurrrr für den Hinweis. Sowieso Dank euch allen
 
Der Raspi läuft wieder, Zugang per SSH über Port 22222 funktioniert.
@ carsten_h: wenn ich den Befehl über Putty eingebe:
not found
mount: /media/movies: mount point does not exist.
 
mount: /media/movies: mount point does not exist.
So direkt am Rechner wäre das sicherlich eine Sache von ca. 30 Sekunden, aber so aus der Ferne ist das echt umständlich.
Es könnte sein, daß das ganze doch im Core-Container sein muß, ich weiß es nicht wirklich, da ich mich damit noch nie beschäftigt habe.
Wenn Du im Terminal "cd /" und dann "ls -al" eingibst, gibt es dann in der Auflistung einen Ordner "media"?

Wenn Du mit dem Terminal auf den Port 22 gehst, gib es dann bei den gleichen Befehlen einen Ordner "media"?

Dort wo "media" existiert ist der richtige Port. Dort mußt Du auch den kompletten mount Befehl eingeben.

Du könntest bei dem mount statt am Anfang nur -t auch ein -tv benutzen, dann wird der Befehl etwas gesprächiger (sagt mir jedenfalls der mount Befehl auf meinem Mac (ist ja auch ein Unix-Rechner)).
 
den Ordner"media" und die Unterordner konnte ich im Terminal-Add On (nicht mit root-Berechtigung) aufrufen.

ich habe noch etwas experimentiert:
im "Entwicklerwerkzeuge/Dienste" eingefügt und gestartet:
mkdir -p /media/olaf;mount -tv cifs -o vers=3.0,noserverino,username=homeass,password=xxxxxxxxx,domain=WORKGROUP,sec=ntlm //192.168.178.38/Multimedia/Kamera /media/olaf

Log-Datei:

Error handling message: Service mkdir -p /media/olaf;mount -tv cifs -o vers=3.0,noserverino,username=homeass,password=xxxxxxx,domain=WORKGROUP,sec=ntlm //192.168.178.38/Multimedia/Kamera /media/olaf does not match format <domain>.<name> for dictionary value @ data['sequence'][0]['service']. Got 'mkdir -p /media/olaf;mount -tv cifs -o vers=3.0,noserverino,username=homeass,password=xxxxxxxx,domain=WORKGROUP,sec=ntlm //192.168.178.38/Multimedia/Kamera /media/olaf' (invalid_format) from 192.168.178.34 (Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:109.0) Gecko/20100101 Firefox/110.0)
 
Zuletzt bearbeitet von einem Moderator:

Letzte Anleitungen

Statistik des Forums

Themen
4.702
Beiträge
47.957
Mitglieder
4.347
Neuestes Mitglied
Reekoh
Zurück
Oben