SMB shares from EnOS server don't show up in network

I have a small home network with two servers with SMB shares running: One of them runs EndeavourOS, the other runs a Debian derivative (Armbian). The shares from the Armbian server show up in Dolphin, while the server or the shares from the EnOS server do not. I have to enter the server name in the address line to get access. When I do this, both servers show the same behavior regarding access rights.

Neither server has wsdd installed. I tried on the EnOS machine, but it didn’t do anything.

I can’t put my finger on the difference between the servers, and it annoys me to no end. How can I fix this? The smb.conf (comments removed with sed -n '/^[^#;]/ p' /etc/samba/smb.conf) files look OK to me:

smb.conf from EnOS machine, this server is invisible, samba version 4.19.1:

[global]
   workgroup = EMK2203
   server string = Server (Samba, EnOS) %h
   server role = standalone server
   log file = /var/log/samba/log.%m
   max log size = 100
   passdb backend = tdbsam
   guest account = nobody
   map to guest = Bad Password
   bind interfaces only = yes
   interfaces = lo eno1 wlan0
[NUC10i3FNK-SDXC]
   comment = Shared SDXC
   path = /run/media/emk2203/Transcnd64G/cloud
   valid users = emk2203
   public = no
   writable = yes
[RecentMedia]
   comment = Recently Downloaded
   path = /srv/media/completed
   valid users = emk2203
   public = yes
   writable = yes
   create mask = 0765

smb.conf from Armbian machine, this works, samba version 4.18.6+dfsg-1ubuntu2:

[global]
   workgroup = EMK2203
   server string = %h server (Samba, Ubuntu)
   log file = /var/log/samba/log.%m
   max log size = 1000
   logging = file
   panic action = /usr/share/samba/panic-action %d
   server role = standalone server
   obey pam restrictions = yes
   unix password sync = yes
   passwd program = /usr/bin/passwd %u
   passwd chat = *Enter\snew\s*\spassword:* %n\n *Retype\snew\s*\spassword:* %n\n *password\supdated\ssuccessfully* .
   pam password change = yes
   map to guest = bad user
   usershare allow guests = yes
[printers]
   comment = All Printers
   browseable = no
   path = /var/tmp
   printable = yes
   guest ok = no
   read only = yes
   create mask = 0700
[print$]
   comment = Printer Drivers
   path = /var/lib/samba/printers
   browseable = yes
   read only = yes
   guest ok = no
[ext]
        comment = Storage
        path = /ext
        writable = yes
        public = no
        valid users = emk2203
        force create mode = 0664
[WDBlue2T]
        comment = HC1 Harddrive
        path = /srv/WDBlue2T
        writable = yes
        public = no
        valid users = emk2203
        force create mode = 0664

What do I need to change here?

Under [global] in the EndeavourOS smb.conf, try adding the following:

name resolve order = lmhosts host wins bcast

This tells Samba the order in which it should resolve names. Sometimes, this can help with network discovery.

Additionally, under [global], try setting:

netbios name = YOUR_MACHINE_NAME

Replace YOUR_MACHINE_NAME with a unique name for your EndeavourOS machine. This explicitly sets the NetBIOS name for the machine.

Hey emk2203,

I see you’re having some trouble with Samba shares on your EndeavourOS server, and I’d be happy to help you troubleshoot this! Let’s go through the steps to get those shares visible in Dolphin.

  1. Workgroup Matching: First off, ensure that the “workgroup” in both your EndeavourOS and Armbian Samba configurations is identical. In your case, it should be “EMK2203.”

  2. NetBIOS Name Check: Make sure that the NetBIOS name of your EndeavourOS server matches the server name you’re trying to access. This should be the same as the “server string” in your [global] Samba configuration.

  3. Interfaces and Bind Interfaces: Review the “bind interfaces only” and “interfaces” settings in your EndeavourOS Samba config. These settings could be too restrictive, preventing Samba from broadcasting on the network.

  4. Access Rights: Confirm that the permissions and ownership on your shared folders are set correctly, allowing access to your intended users (in your case, “emk2203”).

  5. Hosts File Check: Check your /etc/hosts file on both servers to ensure that hostnames are resolved correctly. Sometimes, hostname resolution issues can mess with network discovery.

  6. Restart Samba: After making any changes in your Samba config, don’t forget to restart the Samba service to apply these changes:

sudo systemctl restart smbd
  1. Firewalls: Ensure that there are no firewalls blocking Samba traffic on your EndeavourOS server.

  2. Different SMB Client: Try connecting to your EndeavourOS server from a different SMB client on another computer to check if the issue is Dolphin-specific or more general.

  3. Diagnostic Tools: Utilize diagnostic tools like smbclient and smbtree to help you troubleshoot and discover Samba shares:

smbclient -L <EndeavourOS Server IP>
smbtree
  1. SMB Version Compatibility: Ensure that both servers are using compatible versions of the SMB protocol. Verify the Samba versions on both servers to ensure they match up.

I hope these steps help you get those shares to show up in Dolphin without any manual entry. If you have any questions or need further assistance, feel free to ask. Happy troubleshooting! :blush:

Best regards,
Alejo

1 Like

I found the solution, and it was a very simple change:

server string = Server (Samba, EnOS) %h # <--- This is WRONG!

keeps your server from getting discovered. ONLY

server string = %h Server (Samba, EnOS)

works correctly. The %h variable needs to be at the front of the declaration. Never found this spelled out anywhere. If it is, please link to it.

I am going to mark my own post as the solution, so poor souls with the same issue googling this in the future can find the fix right away.

It wouldn’t have been possible to find it without @VictiniFan360’s excellent samba debugging howto, though. But I don’t want to mark his as solution for the aforementioned reason. Maybe we can label posts not only with ‘solution’, but also ‘howto’ or ‘best process’. This would be ideal.

Similar to you, I was recently trying to connect to my NAS through my File Manager (pcmanfm), like my Win10 machine does. What worked for me was to type in “smb://user@DS620slim”. This prompted a login which I saved forever. I then added a bookmark to this NAS along with Home, Downloads and /. User, of course, is your user name, while DS602slim is the name of my NAS, to be replace with your device name.
Now I need to see if this will work on my laptop, but it is connected via WiFi instead of by Ethernet hub.

This topic was automatically closed 2 days after the last reply. New replies are no longer allowed.