No Samba or NFS access since LE 13

  • Hi,

    Today I have updated from 12.2.0 to last 13 nightly (03052026) and I'm not able to connect to my samba shared units connected to my old Asus AC87U router.

    With libreelec 12.2.0 samba and NFS protocols works fine. The problem is with libreelec 13. Neither samba nor NFS seems to work.

    The router has the latest merlin FW 384.13_10 and it's configured to use SMB1 and SMB2 protocol.

    When I choose the user and password in Kodi, the password file is marked in red and I can not continue. (I'm sure that the password is correct)

    Is it possible to do anything to solve this from the libreelec side, or it's time tu upgrade my old router? I would like to try something before that ... :D

    Any idea?

    Thanks!

  • K22 contains some minor changes to the SMB client:

    * Defaults to SMBv2 and large MTU support (not plain SMBv2)

    * Defaults to 128k chunk size (and size is configurable)

    The defaults were chosen by Kodi devs to work for the majority of people but perhaps your old router needs something different. Go experiment with options and see if that results in working connections again. I'd start with the minimum protocol.

  • Create /storage/.kodi/userdata/advancedsettings.xml with this content:

    Code
    <advancedsettings version="1.0">
    	<network>
    		<disableipv6>true</disableipv6>
    		<disablehttp2>true</disablehttp2>
    	</network>
    	<samba>
    		<statfiles>false</statfiles>
    	</samba>
    </advancedsettings>
  • Thats the log I've been able to retrieve from Kodi. Any Idea?

    https://paste.libreelec.tv/tight-anteater.log

    Thanks. The error is visible in the log. It could be an LE 13 bug.

    Code
    2026-03-09 17:49:16.170 T:1313    debug <samba>: int XFILE::CSMBDirectory::OpenDir(const CURL&, std::string&): Using authentication url smb://USERNAME:[email protected]/
    2026-03-09 17:49:16.170 T:1313    debug <general>: smb: parsed path: fname='smb://USERNAME:[email protected]' server='192.168.1.2' share='' path='' options=''
    2026-03-09 17:49:16.170 T:1313    debug <general>: smb: SMBC_check_options(): server='192.168.1.2' share='' path='' options=''
    2026-03-09 17:49:16.170 T:1313    debug <general>: smb: SMBC_server: server_n=[192.168.1.2] server=[192.168.1.2]
    2026-03-09 17:49:16.170 T:1313    debug <general>: smb:  -> server_n=[192.168.1.2] server=[192.168.1.2]
    2026-03-09 17:49:16.170 T:1313    debug <general>: smb: Connecting to 192.168.1.2 at port 139
    2026-03-09 17:49:16.636 T:1313    debug <general>: smb: socket options: SO_KEEPALIVE=0, SO_REUSEADDR=0, SO_BROADCAST=0, TCP_NODELAY=1, TCP_KEEPCNT=9, TCP_KEEPIDLE=7200, TCP_KEEPINTVL=75, IPTOS_LOWDELAY=0, IPTOS_THROUGHPUT=0, SO_REUSEPORT=0, SO_SNDBUF=87040, SO_RCVBUF=131072, SO_SNDLOWAT=1, SO_RCVLOWAT=1, SO_SNDTIMEO=0, SO_RCVTIMEO=0, TCP_QUICKACK=1, TCP_DEFER_ACCEPT=0, TCP_USER_TIMEOUT=0
    2026-03-09 17:49:16.636 T:1313    debug <general>: smb: cli_set_timeout: Changing connection timeout for server '192.168.1.2' from 20000 (ms) to 30000 (ms).
    2026-03-09 17:49:16.638 T:1313    error <general>: int XFILE::CSMBDirectory::OpenDir(const CURL&, std::string&): Unable to open directory : 'smb://USERNAME:[email protected]/'
                                                       unix_err:'16' error : 'Invalid argument'
  • Thanks. The error is visible in the log. It could be an LE 13 bug.

    Code
    2026-03-09 17:49:16.170 T:1313    debug <samba>: int XFILE::CSMBDirectory::OpenDir(const CURL&, std::string&): Using authentication url smb://USERNAME:[email protected]/
    2026-03-09 17:49:16.170 T:1313    debug <general>: smb: parsed path: fname='smb://USERNAME:[email protected]' server='192.168.1.2' share='' path='' options=''
    2026-03-09 17:49:16.170 T:1313    debug <general>: smb: SMBC_check_options(): server='192.168.1.2' share='' path='' options=''
    2026-03-09 17:49:16.170 T:1313    debug <general>: smb: SMBC_server: server_n=[192.168.1.2] server=[192.168.1.2]
    2026-03-09 17:49:16.170 T:1313    debug <general>: smb:  -> server_n=[192.168.1.2] server=[192.168.1.2]
    2026-03-09 17:49:16.170 T:1313    debug <general>: smb: Connecting to 192.168.1.2 at port 139
    2026-03-09 17:49:16.636 T:1313    debug <general>: smb: socket options: SO_KEEPALIVE=0, SO_REUSEADDR=0, SO_BROADCAST=0, TCP_NODELAY=1, TCP_KEEPCNT=9, TCP_KEEPIDLE=7200, TCP_KEEPINTVL=75, IPTOS_LOWDELAY=0, IPTOS_THROUGHPUT=0, SO_REUSEPORT=0, SO_SNDBUF=87040, SO_RCVBUF=131072, SO_SNDLOWAT=1, SO_RCVLOWAT=1, SO_SNDTIMEO=0, SO_RCVTIMEO=0, TCP_QUICKACK=1, TCP_DEFER_ACCEPT=0, TCP_USER_TIMEOUT=0
    2026-03-09 17:49:16.636 T:1313    debug <general>: smb: cli_set_timeout: Changing connection timeout for server '192.168.1.2' from 20000 (ms) to 30000 (ms).
    2026-03-09 17:49:16.638 T:1313    error <general>: int XFILE::CSMBDirectory::OpenDir(const CURL&, std::string&): Unable to open directory : 'smb://USERNAME:[email protected]/'
                                                       unix_err:'16' error : 'Invalid argument'

    OK, no problem :)

    However, I've tried to access the Samba shares from the LibreELEC console and it seems to work fine.

    The command smbclient -L 192.168.1.2 -U myuser%mypassword correctly lists all my shared folders. This suggests the issue might be specific to Kodi's internal Samba client?¿.

    In the meantime, I have mapped the network shares as local mount points in /storage using systemd NFS mounts.

    Thanks for your support!

  • There is no known Kodi SMB client bug in K22/LE13 images. Have you bothered to experiment with the protocol version as asked?

    Yes, "I tried, but it didn't work..." But today I've realiced that I was configuring the minimum and maximun samba protocols on the libreelec service menu instead of the kodi service menu. After I changed de minumum protocol from SMB2 and large MTU to SMB2, it started working fine again.

    Thanks, and sorry for the inconvenience...

  • Yes, "I tried, but it didn't work..." But today I've realiced that I was configuring the minimum and maximun samba protocols on the libreelec service menu instead of the kodi service menu. After I changed de minumum protocol from SMB2 and large MTU to SMB2, it started working fine again.

    Thanks, and sorry for the inconvenience...

    Hi. I'm trying to fix a similar issue (getting LibreElec to connect to a ASUS Merlin USB based samba share). "Kodi service menu"? Surely only one place to set the SMB versions: Settings/LibreElec/Services/Samba? That said, I recall having this issue with LE12. Some gotcha for my setup I forgot!

  • Ah, scratch my last message. I think I understand: Settings/LibreElec/Services/Samba is the configuration for incoming to a LibreElec based Samba share (connect from say PC to LibreElec). The correct route to connect LibreElec to a Samba share would be via (for videos) Videos/Files/Add videos. I think that's what I did in LE12 (although the forgotten Merlin/LE gotcha probably remains!).

  • SMB connections to the local Samba server (incoming) = Settings > LibreELEC > Services > Samba

    SMB connections to another SMB/Samba server (outgoing) = Settings > Services > SMB Client

    To make Kodi connect to an older SMBv1 share you need to set min/max = SMBv1. If you set it for min = SMBv1, max = SMBv3 it will default to connecting at SMBv2 and will never attempt SMBv1.

  • SMB connections to the local Samba server (incoming) = Settings > LibreELEC > Services > Samba

    SMB connections to another SMB/Samba server (outgoing) = Settings > Services > SMB Client

    To make Kodi connect to an older SMBv1 share you need to set min/max = SMBv1. If you set it for min = SMBv1, max = SMBv3 it will default to connecting at SMBv2 and will never attempt SMBv1.

    Many thanks! Very careless of me not to check - no idea why but I was on Basic or something so never saw it in Services! Set LE back to Expert and I could see SMB Client. Clicked it, set SMB to max/min SMBv2 (highest available in Merlin which I had set to SMBv2 only) and WS-Discovery to "on" and it was a dream to set up with discovery now(?) working.