source: trunk/server/source3/smbadduser.in@ 586

Last change on this file since 586 was 414, checked in by Herwig Bauernfeind, 15 years ago

Samba 3.5.0: Initial import

File size: 1.8 KB
Line 
1#!/bin/csh
2#
3# smbadduser - Written by Mike Zakharoff
4#
5
6prefix=@prefix@
7exec_prefix=@exec_prefix@
8LIBDIR=@libdir@
9PRIVATEDIR=@privatedir@
10CONFIGDIR=@configdir@
11
12unalias *
13set path = ($path /usr/bin)
14
15set smbpasswd = $PRIVATEDIR/smbpasswd
16set user_map = $CONFIGDIR/smbusers
17
18#
19# Set to site specific passwd command
20#
21set passwd = "getent passwd"
22#set passwd = "niscat passwd.org_dir"
23#set passwd = "ypcat passwd"
24
25set line = "----------------------------------------------------------"
26if ($#argv == 0) then
27 echo $line
28 echo "Written: Mike Zakharoff email: michael.j.zakharoff@boeing.com"
29 echo ""
30 echo " 1) Updates $smbpasswd"
31 echo " 2) Updates $user_map"
32 echo " 3) Executes smbpasswd for each new user"
33 echo ""
34 echo "smbadduser unixid:ntid unixid:ntid ..."
35 echo ""
36 echo "Example: smbadduser zak:zakharoffm johns:smithj"
37 echo $line
38 exit 1
39endif
40
41touch $smbpasswd $user_map
42set new = ()
43foreach one ($argv)
44 echo $one | grep ':' >& /dev/null
45 if ($status != 0) then
46 echo "ERROR: Must use unixid:ntid like -> zak:zakharoffm"
47 continue
48 endif
49 set unix = `echo $one | awk -F: '{print $1}'`
50 set ntid = `echo $one | awk -F: '{print $2}'`
51
52 set usr = `eval $passwd | awk -F: '$1==USR {print $1}' USR=$unix`
53 if ($#usr != 1) then
54 echo "ERROR: $unix Not in passwd database SKIPPING..."
55 continue
56 endif
57 set tmp = `cat $smbpasswd | awk -F: '$1==USR {print $1}' USR=$unix`
58 if ($#tmp != 0) then
59 echo "ERROR: $unix is already in $smbpasswd SKIPPING..."
60 continue
61 endif
62
63 echo "Adding: $unix to $smbpasswd"
64 /usr/bin/smbpasswd -a -n $unix
65 if ($unix != $ntid) then
66 echo "Adding: {$unix = $ntid} to $user_map"
67 echo "$unix = $ntid" >> $user_map
68 endif
69 set new = ($new $unix)
70end
71
72#
73# Enter password for new users
74#
75foreach one ($new)
76 echo $line
77 echo "ENTER password for $one"
78 smbpasswd $one
79end
Note: See TracBrowser for help on using the repository browser.