I'd like to script adding a share to a smb.conf
file. My current script just appends it to the end of the file, but that's not ideal. I'd rather have something that will add a new share if it doesn't exist, and replace it if it does.
I'm currently scripting this on a CentOS 7 distro, but would ideally like something that would work across distros, though that's not a requirement.
Also, I'm using bash
to do this because the script is run before other packages are added to the system. The script uses yum
to install the samba
packages, and then is supposed to configure it and add shares.
Best Answer
To fit with modern sysadmin best practices it would be good to add your configs as individual files in
/etc/smb/smb.d
and then reference them with aninclude
. Sadly samba does not support wildcardinclude
s so you have to do add something like:in your
smb.conf
and then generate theincludes.conf
with something like:For a bit more context:
So now you can stick any additional samba configs into
/etc/smb/smb.d
, regenerateincludes.conf
and restart samba and life is good.