feat(testbed/cron): use useradd; check username
This commit is contained in:
parent
937bf9e000
commit
585b8ad82a
|
@ -2,8 +2,14 @@
|
|||
set -ex
|
||||
THIS_DIR=$( cd "$( dirname "${BASH_SOURCE[0]:-${(%):-%x}}" )" && pwd )
|
||||
|
||||
check_username() {
|
||||
( echo $1 | grep -qxE "^[a-z][-a-z0-9_]*\$" ) || return 1
|
||||
return 0
|
||||
}
|
||||
|
||||
touch_user() {
|
||||
test -n "$1"
|
||||
check_username $1 || { echo "Invalid user name $1 !"; exit -1; }
|
||||
if id -u $1 1>/dev/null 2>&1; then
|
||||
return
|
||||
fi
|
||||
|
@ -12,13 +18,8 @@ touch_user() {
|
|||
exit 1
|
||||
fi
|
||||
|
||||
adduser \
|
||||
--shell /bin/bash \
|
||||
--disabled-password \
|
||||
--home /home/$1 \
|
||||
--gecos "nasp member" \
|
||||
$1
|
||||
usermod -a -G nasp $1
|
||||
useradd -m --groups nasp $1
|
||||
su - $1 -c "true"
|
||||
|
||||
mkdir -p /home2/$1
|
||||
chown $1: /home2/$1
|
||||
|
|
Loading…
Reference in New Issue
Block a user