SMB with Libreelec 8.2 and TimeCapsule not working

  • Hello!


    After updating from LibreElec 8.0 to 8.2 my SMB access to my Apple TimeCapsule Server is not working anymore.

    Apparently it uses SMB 1.0? Although I am not 100% sure on that.

    Is there any possibility/option how I still can access my files?


    Thanks!

    Edited once, last by Fenderman ().

  • I read the release notes before and I also already tried to change this setting with no effect:

    Quote

    The Kodi SMB client now defaults to SMB3 connections but can fail to negotiate SMB3 with old Samba (NAS) versions. A new option in Kodi Settings > Services > SMB client > allows SMB2 or SMB1 to be forced for compatibility with legacy SMB servers.


    I changed it to allow SMB1, but still not working.

    I rolled back to LibreElec 8.0.x and everything works perfectly.
    Maybe there is bug?

    • Official Post

    I have remembered that my Apple router is in fact a TimeCapsule so I will play about with it and see what I can figure out. They use Apple's own interpretation of SMB protocols not Samba so there is bound to be something unusual required.

  • Add the source by typing the network path then provide user name and password. Samba browser is gone in the new version.


    That is in the release notes.

    • Official Post
    Code
    mount -t cifs //172.16.40.100/SHARE /storage/tcshare -o user=kodi,password=kodi,sec=ntlm,vers=1.0

    ^ that works from the console so worst case you can use local mounts to access. I will see whether I can translate that into working smb.conf

    • Official Post
    Code
    client max protocol = NT1
    client use spnego = no
    client NTLMv2 auth = no

    ^ adding those to /storage/.kodi/.smb/user.conf and restarting Kodi (or rebooting) allows me to access an existing share in sources.xml although when browsing pictures in a share the connection seems to die regularly. Browsing photo's has always been partially broken in Krypton for me so I'm not sure if it's also the same with video. I'm actually surprised Apple hasn't done a firmware update to support SMB2/3 on these boxes; time to get a proper NAS!

  • I also ran into this a few weeks ago with an old 2TB TC I was using as the media store. If all devices were power cycled it would seem to work for a certain time period as long as there was constant SMB traffic to/from the TC but if it went idle the connections broke after about 30s. My guess is something in the new SMB Client implementation in 8.1.x and above (as well as the 9.0 Milhouse alpha builds) appears to trigger a SMB/networking fault in the Time Capsule itself. I found once the TC shares dropped in LE/Kodi, shares also stopped being accessible by any other other device as well until it was power cycled. Ended up retiring the TC and replacing it with a Seagate Personal Cloud device that although noisier when spinning up, works perfectly with the updated LibreELEC builds SMB client.

    • Official Post

    I've not seen issues with accessing the TC from another device (masOS sierra laptop) using SMB (not AFP) at the same time things in Kodi die and restarting Kodi from the console immediately allowed Kodi to work again for another 30 seconds so I'm not convinced it's a TC problem. I also did some experiments with longer Samba connection timeout values in advancesettings.xml but it made no difference. I might put smb debugging on in Kodi, although that mostly generates a ton of verbose crap that I don't understand so I wouldn't expect a eureka moment. I'll also play about with kernel level mounts to see if the same problem exhibits there.

    • Official Post

    Save that ^ as /storage/.config/system.d/storage.timecapsule.mount then "systemctl enable /storage/.config/system.d/storage.timecapsule.mount" and reboot, and the local mount to the device should be available to add as a new source in Kodi. It appears to be stable for me over a period of several hours. If 'mount' works the issue appears to be in smbclient or how Kodi interacts with smbclient.


    Fenderman You will need to rescrape content to the library as all paths to content will change, but at least it works. It is technically possible to update the DB paths but that requires some sqlite SQL skills and I never bothered to learn those. I'm sure there's a howto somewhere.

  • When the TC access dropped from LE for me (should have mentioned it is on an RPi3), I was also trying access from Win 10 (1703) which would then not connect again until the TC was restarted, restarting LE would not help. The only difference was my mount file based on the existing sample file did not contain the additional explicit options "sec=ntlm,vers=1.0" which maybe made some form of difference to it's resiliance?

  • Adding the following autostart.sh to the .config folder did also work for me

    Bash
    #!/bin/sh
    (sleep 10 && mount -o remount,discard /flash && mount -o remount,discard /storage && mount -t cifs //192.168.1.1/Data /storage/timecapsule -o username=kodi,password=kodi,unc=\\\\192.168.1.1\\Data\\Films,sec=ntlm,vers=1.0)&
  • Adding the following autostart.sh to the .config folder did also work for me

    Bash
    #!/bin/sh
    (sleep 10 && mount -o remount,discard /flash && mount -o remount,discard /storage && mount -t cifs //192.168.1.1/Data /storage/timecapsule -o username=kodi,password=kodi,unc=\\\\192.168.1.1\\Data\\Films,sec=ntlm,vers=1.0)&

    I'm new at this.

    "username=kodi, password=kodi"

    Is that standard or should I put my own username and password in it's place.

    "192.168.1.1\\Data\\Films"

    Is that also standard or is this different.


    (I have a RaspberryPi with LibreElec trying to connect with SMB with my TimeCapsule.)

  • You use your own username/password, and your own IP address and path.