I configured my /etc/samba/smb.conf for a standalone server, removed all the printer stuff and checked its contents with testparm. It shows the following service definitions:
# Global parameters
[global]
log file = /var/log/samba/log.%m
logging = file
map to guest = Bad User
max log size = 1000
obey pam restrictions = Yes
pam password change = Yes
panic action = /usr/share/samba/panic-action %d
passwd chat = *Enter\snew\s*\spassword:* %n\n *Retype\snew\s*\spassword:* %n\n *password\supdated\ssuccessfully* .
passwd program = /usr/bin/passwd %u
server role = standalone server
server string = %h server (Samba, Manjaro)
unix password sync = Yes
usershare allow guests = Yes
workgroup = ARMINUX
idmap config * : backend = tdb
[achat-mj-jaro]
path = /home/jaro
read only = No
valid users = jaro
[achat-mj-ad]
path = /home/AD@achat
read only = No
valid users = jaro
[achat-mj-bifimu]
path = /mnt/bifimu
read only = No
valid users = jaro
In my pcmanfm network folder “network:///” I should see my Manjaro PC “achat” and the defined shares, however, there is nothing besides the Windows network.
In the samba log file I see:
######### 2022 03 26 1513 ### test mit neuem smb.conf
[2022/03/26 15:16:26.626809, 0] ../../source4/samba/server.c:626(binary_smbd_main)
samba version 4.15.5 started.
Copyright Andrew Tridgell and the Samba Team 1992-2021
[2022/03/26 15:16:26.627151, 0] ../../lib/util/become_daemon.c:150(daemon_status)
daemon_status: daemon 'samba' : Starting process...
[2022/03/26 15:16:26.675359, 0] ../../source4/samba/server.c:861(binary_smbd_main)
At this time the 'samba' binary should only be used for either:
'server role = active directory domain controller' or to access the ntvfs file server with 'server services = +smb' or the rpc proxy with 'dcerpc endpoint servers = remote'
You should start smbd/nmbd/winbindd instead for domain member and standalone file server tasks
[2022/03/26 15:16:26.675415, 0] ../../lib/util/become_daemon.c:119(exit_daemon)
exit_daemon: daemon failed to start: Samba detected misconfigured 'server role' and exited. Check logs for details, error code 22
I do not understand why the samba service is not started, what is wrongly configured and would appreciate help.
Additional observation: I can enter the following commands
sudo smbd start
sudo nmbd start
After that the pcmanfm network folder shows achat and within achat my shares:
Have you definitely enabled the smbd/nmbd services?
You can check their status with sudo systemctl status smbd.service and sudo systemctl status nmbd.service
You can start the service on the current run by substituting status in the above with start, and to have them start up automatically each boot, replace it with enable - i.e. sudo systemctl enable smbd.service and sudo systemctl enable nmbd.service
Apologies if that’s teaching grandmother to suck eggs.
I looked at your sharenames and noticed the locations in /home and /mnt
Those locations is begging for problems.
Use a dedicated structure outside the /home and /mnt and /run - so you can control the permissions without worrying the system inherit system permissions onto the shares making them inaccessible.
[jaro@achat ~]$ sudo -i
[sudo] Passwort...
[achat ~]# systemctl status smbd.service
Unit smbd.service could not be found.
[achat ~]# systemctl status nmbd.service
Unit nmbd.service could not be found.
### so I tried to enable. I already knew those commands, however ...
[achat ~]# systemctl enable smbd.service
Failed to enable unit: Unit file smbd.service does not exist.
[achat ~]# systemctl enable nmbd.service
Failed to enable unit: Unit file nmbd.service does not exist.
Why do the services not exist?
Well, I do understand that I cannot enable a non-existing service for the next system start.
You say that the locations in /home and /mnt are likely to cause (permission) problems? I would like to understand your statement:
“Use a dedicated structure outside the /home and /mnt and /run - so you can control the permissions without worrying the system inherit system permissions onto the shares making them inaccessible.”
The link to “Basic Samba Setup and Troubleshooting 1” does not help me; it is like Chinese to me.
When I edited my smb.conf file I started from the template and modified as few lines as possible according to the instructions I read in the template. What was wrong with my approach?
I have been a system adminstrator on numerous sites and what I recommend is based by personal experience on how to administer shared resources using a predicatable structure to simplify maintenance and permissions.
Example
/data/smb/share1
/data/smb/share2
Set permissions on /data/smb using either ownership to your username or set readwrite to everyone.
/mnt is for temporary mounts and /home is for users home and is and the mount on boot sets inherited permissions and is thus readonly for everyone but root.
That is why it is wiser to create a dedicated structure like the /data tree example mentioned above.
I have written numerous topics on the topic of sharing and mounting both devices and remote shares - just search for [root tip].
@ straycat
I believe you have got the solution to my question why my Manjaro won’t start the daemon processes. Naming of the services! Now, after the start of my Manjaro system, pcmanfm / network shows my PC “achat”. See the following #log1#.
My intended sharing works now and I might close this thread. However, I still do not understand why error 22 persists. For the sake of spreading Linux knowhow I would welcome additional comments. In particular I note this line in /var/log/samba/log.%m:
“You should start smbd/nmbd/winbindd instead for domain member and standalone file server tasks”
Yes, what I need is a standalone file server on my PC to serve in my home network and therefore I specified “server role = standalone server” in my above smb.conf file. The error 22 seemingly tells me what to do. Possibly I am too stupid to understand the instruction. Does it mean that the commands
“systemctl enable smb.service” and
“systemctl enable nmb.service”
are wrong to start a standalone server and instead of that I should invoke
### 2022 04 02 2032 after enable of smb and nmb ###################
[2022/04/02 10:49:47.502358, 0] ../../source4/samba/server.c:626(binary_smbd_main)
samba version 4.15.5 started.
Copyright Andrew Tridgell and the Samba Team 1992-2021
[2022/04/02 10:49:47.502549, 0] ../../lib/util/become_daemon.c:150(daemon_status)
daemon_status: daemon 'samba' : Starting process...
[2022/04/02 10:49:47.531474, 0] ../../source4/samba/server.c:861(binary_smbd_main)
At this time the 'samba' binary should only be used for either:
'server role = active directory domain controller' or to access the ntvfs file server with 'server services = +smb' or the rpc proxy with 'dcerpc endpoint servers = remote'
You should start smbd/nmbd/winbindd instead for domain member and standalone file server tasks
[2022/04/02 10:49:47.531516, 0] ../../lib/util/become_daemon.c:119(exit_daemon)
exit_daemon: daemon failed to start: Samba detected misconfigured 'server role' and exited. Check logs for details, error code 22
I don’t know about the error code but if you have samba working that’s good.You might check out Using Samba in your File Manager - Manjaro and see if you missed something setting it up.