There are 3 issues with sharing of "Public" folder by standard (non-administrator) users
This answer relates to Local Network Sharing of the Public folder within each users "Home" folder,
/home/$USER/Public. When one right clicks on this folder and selects Local Network Share One would see this window:
1. First time sharing in this computer
If no one else has ever shared a "Public" folder in this computer,
samba will not be installed. The user will see:
On clicking Install Service one gets the prompt to install
This is the first hurdle for the standard user. On clicking install, the user will be prompted to the administrator's password. At this point the administrator can take over and enter the password.
Alternately if the Administrator has already installed
samba the standard user will not see these prompts.
2. The user is not a member of
samba is installed in the computer the standard user will see the following error message when they try to enable folder sharing.
The key to this error is the last bit, "You do not have permission to create a usershare. Ask your administrator to grant you permissions to create a share."
To share a folder (Public or any other) the standard user has to be a member of the
sambashare group. This has to be done by the administrator (someone with sudo privileges). Log out as the standard user and log back in as the administrator. Open a terminal and enter the command:
sudo gpasswd -a johndoe sambashare
johndoe is to be replaced by the user name of the standard user trying to share the Public folder.
Note: the command is
gpasswd emphasis on the
g . This command will not change the passoword of the user
johndoe. This command will add
johndoe to the group
Next time the standard user logs in, they will almost be able to share the Public folder.
Note2: If the second user is also an administrator (not a standard user) then that user can use the
sudo gpasswd command to add themselves to the group. However, the command will not take effect until the user logs out and logs back in.
3. The sambashare "Public" already exists!
When the standard user logs in and tries again they will see a slightly different error message:
If the standard user gets this error, it means another user (may be the administrator) in this computer has already shared their "Public" folder and used the default share name.
The solution is simple. The standard user needs to change the name of the sambashare in the dialog box like so:
Give an unique share name specific to each standard user, so that when someone accesses the "Public" shared folder they know whose "Public" folder they are accessing.
Hope this helps