[Samba] Useradd doesn't accept dollar sign ($) and "add machine
script" doesn't work
Jarod Legault
design at thermatek.ca
Tue Nov 30 19:19:01 GMT 2004
Hi,
I have set up a Fedora Core 3 machine with Samba 3.0.9 to act as a PDC file and print server. Everything works fine but I am having problems adding new machine accounts. When I try to add them manually using "/usr/sbin/useradd -g machines -d /dev/null -c "Spruce" -s /bin/false SPRUCE$", I get the error message: "invalid user name 'SPRUCE$'". I can add the user without the dollar sign, then go in and edit /etc/passwd and /etc/shadow and add the dollar sign, but this process is kind of tedious. I have tried the "add machine script = /usr/sbin/useradd -d /dev/null -g machines -s /bin/false -M %u" line in smb.conf, but that doesn't work. I get an error message when I try to join the domain (I forget what the error is, sorry). I think the problem is due to useradd not accepting dollar signs at the end of machine names. Can anybody think of a way around this? Is there a way I can use a different version of useradd that will accept dollar signs?
The reason why I would like it automated is because I will be leaving the company to go back to school shortly, and I want to make adding computers and users as simple as possible.
Thanks in advance.
Here's my smb.conf file:
[global]
netbios name = KAITLYN
workgroup = THERMATEK
passdb backend = tdbsam
passwd chat = *New*UNIX*password* %n\n *Retype*new*UNIX*password* %n\n *Enter*new*UNIX*password* %n\n *Retype*new*UNIX*password* %n\n *passwd: *all*authentication*tokens*updated*successfully*
unix password sync = Yes
os level = 64
log level = 2
log file = /var/log/samba/log.%m
max log size = 50
socket options = TCP_NODELAY IPTOS_LOWDELAY SO_SNDBUF=8192 SO_RCVBUF=8192
preferred master = yes
domain master = yes
local master = yes
security = user
encrypt passwords = yes
domain logons = yes
add machine script = /usr/sbin/useradd -d /dev/null -g machines -s /bin/false -M %u
# add machine script = /usr/sbin/useradd -d /dev/null -g machines -s /bin/false %u ;this didn't work either
hosts allow = 127.0.0.1, 192.168.1.
;user profiles and home directory
logon home =
logon drive = H:
logon path =
logon script = %G.bat
[profiles]
path = /home/samba/profiles
writeable = yes
browseable = no
create mask = 0600
directory mask = 0700
[netlogon]
comment = Network Logon Service
path = /home/netlogon
read only = no
browseable = no
write list = @admin
[homes]
valid users = %S
read only = No
browseable = No
[Home]
comment = Home Directory
path = /home/%U/Home
valid users = %U
read only = No
browseable = No
[printers]
comment = All Printers
path = /var/spool/samba
printable = Yes
browseable = No
[PROJECTS]
path = /home/shares/Projects
valid users = @employees, @management
# write list = @employees, @management
read only = No
inherit permissions = Yes
case sensitive = No
msdfs proxy = no
[THERMATEK]
path = /home/shares/Thermatek
valid users = @employees, @management
# write list = @employees, @management
read only = No
inherit permissions = Yes
[MANAGEMENT]
path = /home/shares/Management
valid users = @management
# write list = @management
read only = No
inherit permissions = Yes
[TEMP]
comment = Temp directory (Will be deleted periodically!)
path = /home/shares/Temp
valid users = @users
# write list = @employees, @management
read only = No
inherit permissions = Yes
[ml-2150-3]
comment = Samsung ML-2150 on Linux Server
path = /var/spool/samba
read only = No
guest ok = Yes
printable = Yes
printer name = ml-2150-3
use client driver = Yes
#[netlogon]
#path = /var/lib/samba/netlogon
#read only = yes
#write list = ntadmin
#[profiles]
#path = /var/lib/samba/profiles
#read only = no
#create mask = 0600
directory mask = 0700
More information about the samba
mailing list