Leerzeichen in Win Share Name, wie in fstab eintragen ?

  • auf welchen System machst du das?

    Die Optionen sagen, dass z.B. mount -a nix mounten soll -> noauto
    Und es soll systemd das machen. Läuft da systemd und ist auch richtig eingerichtet? (z.B. richtet librelec das überhaupt ein, so als minimal OS)

    Und wurde systemd neu gestartet?
    Es muss ja fstab neu parsen, um rauszufinden, dass es da auf einmal für mounts zuständig ist, die vor einer Sekunde noch nicht drin waren.

    Ich habe da groß nichts eingerichtet. Ist ein Debian System, sobald ich was in der fstab ändere, abspeicher und dann sudo mount -a mache, habe ich den Mount erfolgreich erstellt, sofern eben kein Leerzeichen drin steht. Also gehe ich davon aus, das es durchaus so klappt. Ich habe eben noch einen Testordner angelegt ohne Leerzeichen im Namen (Windows Seite) diesen dann unter Debian in die fstab eingetragen mit der Line siehe oben und promt war der Pfad gemounted und ich kann die Daten darauf auch sehen.

    Ich habe noch etwas probiert was unter Windows auch wunderbar funktioniert. Ich habe in den Freigabeeinstellungen, dem Ordner einfach einen neuen Anzeigenamen verpasst und ausgewählt. Unter Windows funktioniert das wunderbar, nun kann ich von einem anderen Windows Rechner den neuen Freigabenamen verwenden. Ich dachte das wäre die Lösung, dieses schei.. Linux macht auch das nicht.


    In Windows habe ich jetzt zwei Ordner, wenn ich unter Netzwerk schaue, ist aber beides mal der gleiche. Der mit Leerzeichen ist der echte.

    EDIT..

    Ok äußerst merkwürdig. Ich habe jetzt noch mal @monarc99 Post beherzigt und die Line mal angepasst.

    //myserver/Testordner1 /mnt/Testordner1 cifs credentials=/home/smarthome/.smbcredentials,defaults

    Somit hat es nun geklappt. Der Ordner wurde nicht umbenannt, sondern nur ein neuer Freigabename hinzugefügt. Ohne noaut systemd mount hat es nun geklappt.
    Komisch nur das ich diesen Ordner hier aber genau so eingebunden habe und er direkt da ist.

    //myserver/downloads /mnt/downloads cifs credentials=/home/smarthome/.smbcredentials,noauto,x-systemd.automount,defaults

    Das heißt, ich glaube ich habe die Lösung für mein Problem, nichts umbenennen, nichts neu einlesen lassen und in den Tools alles abändern. Ich füge in Windows einfach der Freigabe einen alternativen Namen hinzu. So bleibt die urspüngliche Freigabe erhalten, der Ordnername bleibt in Windows so wie er ist und ich muss somit keine neuen Pfade in der Emby Bib angeben, auch Kodi muss hier dann nicht neu die DB einlesen.

    System Specs ::
    Kodi 20 Nexus, FireTV Cube // Linux Server + Emby // Samsung QN95B

    3 Mal editiert, zuletzt von Kodi_Newcomer (24. Januar 2021 um 11:30)

  • So es klappt. [bw] [ah] Es lag indem Fall nicht an dem \040 damit klappt das nämlich auch wunderbar, sondern an dem noauto. Sobald ich das aus der Line nehme, hängt mir Linux die Freigabe sauber ein.
    Indem Fall brauch ich auch nicht die Freigabenänderung mit dem alternativ Namen.

    Am Ende aber hätte ich nun 2 Möglichkeiten, \040 oder extra Name für die Freigabe.

    Das mit dem x-systemd.automount muss ich mir dann noch mal anschauen ? Ich dachte das ist ein fertiger Befehl, der eben wenn man unter Linux auf diesen Pfad zugreifen will, der Pfad gemounted wird.

    Problem hierbei ist halt, das der Win Server mit den Shares nicht immer Online ist. Wenn der Linux Server nun mounten will und der Server nicht da ist, weiß ich nicht was mit dem mount passiert, ist der dann einfach da, wenn der Win Server startet oder eben nicht. Daher das systemd Zeugs, hab ich eigentlich so in dem Wiki verstanden, das eben bei Zugriff auf das Share, der mount erstellt wird. Das würde eigentlich passen.

    System Specs ::
    Kodi 20 Nexus, FireTV Cube // Linux Server + Emby // Samsung QN95B

  • Kannst du noch eins probieren?

    einfach mal "mount" ohne Optionen eingeben, damit du siehst, was alles gemountet ist.

    Dann alles was du in /mnt von dir gemountet wurde, umounten. (als root)

    z.B. umount /mnt/downloads
    umount /mnt/Testordner1

    -------------------------------------

    dann in /etc/fstab bei einer Freigabe die systemd Parameter wieder einfügen

    ,noauto,x-systemd.automount,x-systemd.device-timeout=10,timeo=14,x-systemd.idle-timeout=1min

    z.B. in /etc/fstab
    //myserver/downloads /mnt/downloads cifs credentials=/home/smarthome/.smbcredentials,noauto,x-systemd.automount,x-systemd.device-timeout=10,timeo=14,x-systemd.idle-timeout=1min


    und dann ein:
    sudo systemctl daemon-reload

    ---------------------------------------

    und dann:
    cd /mnt/downloads
    ls

    ob das Verzeihnis gemountet wird und Dateien drin sind, die drin sein sollen.

    ----------------------------------------

    Warum? wenn du die Debian Kiste neu bootest und dein SMB Server gerade nicht läuft, weiß ich nicht genau, ob der dann beim Booten solange wartet, bis der SMB Server ihm antwortet. Die fstab gebietet ihm ja, während des Boots alles wo kein "noauto" dran steht, jetzt zu mounten. Wenn der SMB Server nicht antwortet, gehts nicht weiter. Das ist z.B. für Thin Clients gedacht, die keine eigenen Festplatten haben und alle Dateien auf Servern liegen.
    Deshalb soll das Mounten lieber der systemd Dienst (mit timeout) machen. Der macht das dann und der Boot Vorgang ist dann daran nicht gebunden.

  • Vielen Dank dafür, ich hab das so mal versucht, aber nach ls taucht nichts im Ordner auf. Auch mehrmaliges versuchen, scheint den mount nicht ein zu hängen.

    System Specs ::
    Kodi 20 Nexus, FireTV Cube // Linux Server + Emby // Samsung QN95B

  • Der Standard gibts her also kann mans auch nutzen. Zudem machen Leerzeichen Dateinamen mehr leserlich.Auch im SMB Standard stehts. Also liegts an dem schlechten Syntax der fstab ;P

    Nicht haltbar. Ich kann unter Linux auch Leerzeichen im Dateinamen verwenden. Auch dort gibt es der Standard her. Nur zu empfehlen ist das nicht und bevor ich mich noch stundenlang mit so einem Problem rumärgern würde, würde ich den Namen des Shares ändern und wäre wahrscheinlich in 20 Minuten (inkl neu einlesen der DB) fertig.

    Aber ich freue mich auch darüber, wenn ihr hier eine Lösung gefunden habt ;)

    Vielleicht neue ich mir auch einfach einen mit nem Leerzeichen drin und teste mal.

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!