--- ldapadduser.orig 2006-11-16 14:16:49.000000000 +0200 +++ ldapadduser 2006-11-17 14:38:01.000000000 +0200 @@ -21,12 +21,12 @@ if [ -z "$1" ] || [ -z "$2" ] then - echo "Usage : $0 [uid]" + echo "Usage : $0 [uid]" exit 1 fi # Source runtime file -_RUNTIMEFILE="/etc/ldapscripts/runtime" +_RUNTIMEFILE="/usr/share/ldapscripts/runtime" . "$_RUNTIMEFILE" # Username = first argument @@ -42,7 +42,13 @@ fi # Compute homedir -_HOMEDIR=`echo "$UHOMES" | sed -e "s|%u|$_USER|g"` +_HOMEDIR="$(echo "$UHOMES" | sed -e "s|%u|$_USER|g")" + +# Ask gecos +if is_yes "$ASK_GECOS"; then + echo -n "Please enter user's full name: " + read _GECOS +fi # Add user to LDAP _extractldif | _filterldif | _ldapadd @@ -60,10 +66,18 @@ # Create Home dir if is_yes "$CREATEHOMES" then - mkdir -p "$_HOMEDIR" 2>>"$LOGFILE" 1>/dev/null - chown "$_USER":"$_GID" "$_HOMEDIR" 2>>"$LOGFILE" 1>/dev/null - chmod 700 "$_HOMEDIR" 2>>"$LOGFILE" 1>/dev/null - echo_log "Successfully created home directory for user $_USER" + _SRVHOMEDIR="$(echo "$SRV_HOMES" | sed -e "s|%u|$_USER|g")" + + # Populate home directory from skel, or create an empty home + if [ -e "$HOME_SKEL" ]; then + cp -Pr "${HOME_SKEL}" "${_SRVHOMEDIR}" 2>>"$LOGFILE" 1>/dev/null + else + mkdir -p "$_SRVHOMEDIR" 2>>"$LOGFILE" 1>/dev/null + fi + + chown -R "$_UID":"$_GID" "$_SRVHOMEDIR" 2>>"$LOGFILE" 1>/dev/null + chmod 700 "$_SRVHOMEDIR" 2>>"$LOGFILE" 1>/dev/null + echo_log "Successfully created home directory for user $_USER ($_UID)" fi end_ok @@ -78,5 +92,5 @@ ##gidNumber: ##homeDirectory: ##loginShell: -##gecos: +##gecos: ##description: