this post was submitted on 14 Oct 2025
14 points (93.8% liked)

Linux

58947 readers
895 users here now

From Wikipedia, the free encyclopedia

Linux is a family of open source Unix-like operating systems based on the Linux kernel, an operating system kernel first released on September 17, 1991 by Linus Torvalds. Linux is typically packaged in a Linux distribution (or distro for short).

Distributions include the Linux kernel and supporting system software and libraries, many of which are provided by the GNU Project. Many Linux distributions use the word "Linux" in their name, but the Free Software Foundation uses the name GNU/Linux to emphasize the importance of GNU software, causing some controversy.

Rules

Related Communities

Community icon by Alpár-Etele Méder, licensed under CC BY 3.0

founded 6 years ago
MODERATORS
 

EDIT: I've accepted that the tutorial I was trying to follow is incomplete or incorrect. I've successfully accessed my new samba share after creating a user on the host machine and updating smb.conf. I must authenticate to access the share, and I'm fine with that, so I'm calling this thread "Resolved." I want to thank everyone who chimed in in the comments. Feel free to keep the discussion going for anyone else who stumbles upon this thread.

Here are my final notes on this subject:

  • Install samba packages: sudo apt update && sudo apt install samba
  • Confirm smbd is running: sudo systemctl status smbd
  • Create a dedicated folder for the share: sudo mkdir /mnt/ShareDemo
  • Create a new user and set the password for Linux: sudo adduser shareuser
  • Add the new user for Samba using the same password: sudo smbpasswd -a shareuser
  • Change ownership of the ShareDemo folder: sudo chown -R shareuser:shareuser /mnt/ShareDemo
  • And change its permissions to 0775: sudo chmod -R 0775 /mnt/ShareDemo
  • Update firewall rules to allow access: sudo ufw allow samba
  • Add the share definition to the end of /etc/samba/smb.conf as follows:
[ShareDemo]
   path = /mnt/ShareDemo
   valid users = shareuser
   public = no
   writable = yes
   browseable = yes

I'm not sure if restarting the smbd is necessary, but if it is, here's how to do that: sudo service smbd restart

On another device on the same network, we should now be able to find and access this shared folder in the Network section of our file browser of choice and authenticate using shareuser.

ORIGINAL POST:

Background: I'm attempting to set up a public samba share on my local network following this tutorial on thelinuxcode.com. Long term, I'll probably set up some security around this, but for now I just want to confirm I can follow a basic tutorial. Unfortunately, so far, I'm failing.

What I've done so far (on the host machine):

  • Installed samba packages: sudo apt update && sudo apt install samba
  • Confirmed smbd is running: sudo systemctl status smbd
  • Created a dedicated folder for the share: sudo mkdir /mnt/ShareDemo
  • Changed ownership of the ShareDemo folder to nobody:nogroup: sudo chown -R nobody:nogroup /mnt/ShareDemo
  • And changed its permissions to 0775: sudo chmod -R 0775 /mnt/ShareDemo
  • Added the share definition to /etc/samba/smb.conf as follows:
[ShareDemo]
   path = /mnt/ShareDemo
   valid users = @users
   force user = nobody
   force group = nogroup 
   public = yes
   writable = yes
   browseable = yes
  • Updated firewall rules to allow access: sudo ufw allow samba

As far as I can tell, I've followed the instructions exactly as described in the tutorial. According to the tutorial, my newly created Samba share should now be accessible from any Windows, macOS, or Linux device on the same local network. On Linux:

  • Install samba-client if you haven‘t already -> DONE.
  • Open your file manager and click "Other Locations" or "Network" -> DONE.
  • Browse for your Ubuntu hostname and click the share folder -> DONE.
  • It will mount automatically without any login prompt needed -> this is where I'm stuck. I've tested this on two different Linux devices on my local network. In both cases, the samba share shows up in the file manager, but the system prompts me to authenticate and I cannot proceed as an anonymous user.

Even though the tutorial doesn't specifically say I need to, I've tried restarting smbd after updating smb.conf, but I still have the same issue.

What have I done wrong? Is the tutorial missing a step or simply outdated? Is there another tutorial that I should follow instead? Thanks in advance!

top 16 comments
sorted by: hot top controversial new old
[–] jollyrogue@lemmy.ml 2 points 1 day ago

One nit to pick for anyone who reads this later.

/srv is probably a more appropriate location than /mnt. /srv is for local data services are going to serve.

[–] non_burglar@lemmy.world 6 points 1 day ago (2 children)

You are being prompted because the nobody/nogroup user/group has no password, no shell, and no permissions.

That tutorial is wrong. Couple of problems immediately:

  • "valid users" specifies "all the users in this group are allowed access". It is incompatible with "force user/group" directive
  • you should be using the "guest user=" directive, which sets the identity of any public access. Your permissions should match this user.
  • nobody/nogroup are special user and group that (usually) have no access to any file. They exist for processes to run with minimal provileges, or for a fallback default if UID/gid map are invalid. Using this user/group combo for this samba share implies that you will either alter them so that they now DO have privileges to access files, or that you intend samba to never access any files. Create a guest user, set permissions and umask in the directory.
[–] frongt@lemmy.zip 4 points 1 day ago* (last edited 1 day ago) (1 children)

It smells of AI generation. Real people don't write this kind of article like that. I'd bet they said "write a comprehensive 2500+ word guide to install and configure samba on linux".

Edit: the site logo is definitely AI generated, and the T&C page was also generated. This whole site is slop.

[–] non_burglar@lemmy.world 3 points 1 day ago* (last edited 1 day ago)

I agree.

I'm getting bored with the AI influence on everything. And now this poor person has been led down the garden path with that silly article.

[–] yo_scottie_oh@lemmy.ml 1 points 1 day ago (1 children)

Gotcha. FWIW I got in after following the instructions in the "Optional" paragraph about setting up users for authentication - I added a Linux and Samba user called shareuser, set the new user as the owner of /mnt/ShareDemo, and updated the config.

Thanks for confirming my suspicion. This was really going to eat at me if nobody else chimed in, so you really saved me from questioning my own sanity.

[–] non_burglar@lemmy.world 1 points 1 day ago

Glad I was able to help, because samba has a lot of knobs and switches.

When I was first learning samba in 2003, I got overwhelmed pretty fast until my colleague told me the best way to handle samba is to start with a working and simple global directive, then one simple share, and layer security on top of that.

[–] just_another_person@lemmy.world 1 points 1 day ago (1 children)

It's not just a config thing, you need the local guest user and an smbpasswd entry to match: https://serverfault.com/questions/630631/how-to-make-samba-share-to-not-ask-for-password#632296

[–] yo_scottie_oh@lemmy.ml 2 points 1 day ago* (last edited 1 day ago) (1 children)

This helped, thank you!

What has me scratching my head is that in the tutorial I was reading from, it mentions setting up users but very explicitly labels that section as "Optional." Anyway, I got in after following the instructions in that paragraph - adding a Linux and Samba user called shareuser, setting the new user as the owner of /mnt/ShareDemo, and updating the config. Unlike in the tutorial, I kept browseable = yes so that I can still browse to the folder in my file manager.

valid users = shareuser
public = no
writable = yes
browseable = yes

It's a good lesson to learn if you're working with Samba frequently. Just always that there are two auth systems at work: SMB local to the server and filesystem, and the SMB protocol auth that does network access.

👍

[–] sramder@lemmy.world 1 points 1 day ago (1 children)

guest/guest? I think you’re misunderstanding public.

[–] yo_scottie_oh@lemmy.ml 1 points 1 day ago* (last edited 1 day ago) (2 children)

Sorry, I'm trying to understand your comment. Are you suggesting I put something else in place of nobody:nogroup when I set ownership of the ShareDemo folder, or is the issue that I have to actually create a user called nobody and a group called nogroup? Or should I create a different user and group specifically for this samba share? Thanks.

[–] sramder@lemmy.world 1 points 1 day ago (1 children)

It’s been a few years (like 20) give me an hour or two to get a few things done and I’ll have a look.

I was suggesting that a public share might not mean anonymously accessible. You may need to authenticate, some OSes will try to do that for you, some won’t.

I was suggesting attempting to mount the share with a login and password of guest.

[–] yo_scottie_oh@lemmy.ml 2 points 1 day ago (1 children)

Gotcha - thanks for clarifying. I tried logging in w/ login and password of guest, but that didn't work, either. FWIW I successfully authenticated after following the "optional" part of the tutorial (created a new user shareuser, made it the owner of /mnt/ShareDemo, and updated smb.conf).

Based on non_burglar's and frongt's comments, I think I'm willing to file this experience under either incomplete or incorrect tutorial. Importantly, I have learned something about setting up a local Samba share, so I thank you for helping me.

[–] sramder@lemmy.world 1 points 1 day ago

I’m glad somebody got you sorted out. It took me days the first time :-)

[–] hendrik@palaver.p3x.de 1 points 1 day ago* (last edited 1 day ago) (1 children)

I think they want you to add something like

guest ok = yes  

Isn't there some example config installed along with samba, which you can modify or copy-paste? I think that's more likely to be laid out correctly than a random internet tutorial which might be outdated or for another distro or another use-case...

[–] yo_scottie_oh@lemmy.ml 2 points 1 day ago

I got into my new network share, albeit not anonymously, but that's okay. Thanks for chiming in.