123456789101112131415161718192021222324252627282930313233343536373839404142434445 |
- #!/bin/sh
- #
- # Original adduser 05 Feb 2002 by Jon L. Gardner
- #
- # Modified for Tor installer by Nick Mathewson
- ROOTPROP=/
- if [ "`whoami`" != "root" ]; then
- echo "You must be root to execute this script."
- exit
- fi
- if [ "x$3" = "x" ]; then
- echo 'Usage: addsysuser <username> "<full name>" <homedir>'
- exit 0
- fi
- username=$1
- realname=$2
- homedir=$3
- # GID 20 is "staff" which is the default. Change it if you want.
- gid=`niutil -readprop $ROOTPROP /groups/daemon gid`
- if [ "x`niutil -list $ROOTPROP /users|cut -f2 -d' '|grep $username`" != "x" ]; then
- echo The account $username already exists.
- exit 0
- fi
- # home is the local path to the home directory
- home=/Users/$username
- # defhome is what goes into NetInfo
- defhome="/Network/Servers/MyServer/Users"
- #echo "Determining next available system uid (please be patient)..."
- # Uids over 500 are for system users.
- uiddef=`nidump passwd / | cut -d: -f3 | sort -n | grep -v '^[56789]..' |grep -v '^....$' | tail -n 1`
- uiddef=`echo $uiddef + 1 |bc`
- echo Creating account for $username...
- niutil -create $ROOTPROP /users/$username
- niutil -createprop $ROOTPROP /users/$username _writers_tim_passwd $username
- niutil -createprop $ROOTPROP /users/$username realname $realname
- niutil -createprop $ROOTPROP /users/$username _writers_passwd $username
- niutil -createprop $ROOTPROP /users/$username uid $uiddef
- #niutil -createprop $ROOTPROP /users/$username home_loc "<home_dir><url>afp://afp.server.com/Users/</url><path>$username</path></home_dir>"
- niutil -createprop $ROOTPROP /users/$username gid $gid
- niutil -createprop $ROOTPROP /users/$username home $homedir
- niutil -createprop $ROOTPROP /users/$username name $username
- niutil -createprop $ROOTPROP /users/$username passwd '*'
- niutil -createprop $ROOTPROP /users/$username shell /dev/null
|