1111
1212# Argument defenition
1313user=$1
14- full=${2-no}
1514
1615# Includes
1716source $VESTA /conf/vesta.conf
@@ -22,27 +21,26 @@ source $VESTA/func/main.sh
2221# Verifications #
2322# ----------------------------------------------------------#
2423
25- check_args ' 1' " $# " ' user [full] '
26- validate_format ' user' ' full '
24+ check_args ' 1' " $# " ' user'
25+ validate_format ' user'
2726is_object_valid ' user' ' USER' " $user "
2827is_object_unsuspended ' user' ' USER' " $user "
2928
3029
3130# ----------------------------------------------------------#
3231# Action #
3332# ----------------------------------------------------------#
33+ export PATH=$PATH :/usr/sbin
3434
3535# Get user variables
3636source $USER_DATA /user.conf
3737
3838# Rebuild user
39- shell=$( /usr/bin/chsh --list-shells | grep -w " $SHELL " | head -n1)
40- /usr/sbin/adduser " $user " -s " $shell " -c " $CONTACT " -m -d " $HOMEDIR /$user " \
41- & > /dev/null
39+ shell=$( chsh --list-shells | grep -w " $SHELL " | head -n1)
40+ adduser " $user " -s " $shell " -c " $CONTACT " -m -d " $HOMEDIR /$user " & > /dev/null
4241
43- # Change password
44- # /usr/sbin/usermod -p $MD5 $user
45- shadow=/tmp/shadow
42+ # Update password
43+ shadow=' /etc/shadow'
4644shdw=$( grep ^$user : $shadow )
4745shdw3=$( echo " $shdw " | cut -f3 -d :)
4846shdw4=$( echo " $shdw " | cut -f4 -d :)
@@ -56,13 +54,11 @@ sed -i "/^$user:*/d" $shadow
5654echo " $user :$MD5 :$shdw3 :$shdw4 :$shdw5 :$shdw6 :$shdw7 :$shdw8 :$shdw9 " >> $shadow
5755chmod u-w $shadow
5856
59- # Change shell
60- /usr/bin/chsh -s " $shell " " $user " & > /dev/null
61-
6257# Building directory tree
63- mkdir -p $HOMEDIR /$user
64- chmod -R a+x $HOMEDIR /$user
6558mkdir -p $HOMEDIR /$user /conf
59+ chmod a+x $HOMEDIR /$user
60+ chmod a+x $HOMEDIR /$user /conf
61+ chown $user :$user $HOMEDIR /$user
6662chown $user :$user $HOMEDIR /$user /conf
6763
6864if [ ! -z " $WEB_SYSTEM " ] && [ " $WEB_SYSTEM " != ' no' ]; then
@@ -73,39 +69,30 @@ if [ ! -z "$WEB_SYSTEM" ] && [ "$WEB_SYSTEM" != 'no' ]; then
7369 chmod 751 $HOMEDIR /$user /web
7470 chmod 777 $HOMEDIR /$user /tmp
7571 chown $user :$user $HOMEDIR /$user /web
76- if [ " $full " = ' yes' ]; then
77- $BIN /v_rebuild_web_domains $user
78- fi
72+ $BIN /v_rebuild_web_domains $user
73+ fi
74+
75+ if [ ! -z " $DNS_SYSTEM " ] && [ " $DNS_SYSTEM " != ' no' ]; then
76+ mkdir -p $HOMEDIR /$user /conf/dns
77+ chmod 751 $HOMEDIR /$user /conf/dns
78+ $BIN /v_rebuild_dns_domains $user
7979fi
8080
8181if [ ! -z " $MAIL_SYSTEM " ] && [ " $MAIL_SYSTEM " != ' no' ]; then
8282 mkdir -p $HOMEDIR /$user /conf/mail
8383 mkdir -p $HOMEDIR /$user /mail
8484 chmod 751 $HOMEDIR /$user /mail
8585 chmod 751 $HOMEDIR /$user /conf/mail
86- if [ " $full " = ' yes' ]; then
87- $BIN /v_rebuild_mail_domains $user
88- fi
86+ $BIN /v_rebuild_mail_domains $user
8987fi
9088
91- if [ ! -z " $DNS_SYSTEM " ] && [ " $DNS_SYSTEM " != ' no' ]; then
92- mkdir -p $HOMEDIR /$user /conf/dns
93- chmod 751 $HOMEDIR /$user /conf/dns
94- if [ " $full " = ' yes' ]; then
95- $BIN /v_rebuild_dns_domains $user
96- fi
97- fi
9889
9990if [ ! -z " $DB_SYSTEM " ] && [ " $DB_SYSTEM " != ' no' ]; then
100- if [ " $full " = ' yes' ]; then
101- $BIN /v_rebuild_databases $user
102- fi
91+ $BIN /v_rebuild_databases $user
10392fi
10493
10594if [ ! -z " $CRON_SYSTEM " ] && [ " $CRON_SYSTEM " != ' no' ]; then
106- if [ " $full " = ' yes' ]; then
107- $BIN /v_rebuild_cron_jobs $user
108- fi
95+ $BIN /v_rebuild_cron_jobs $user
10996fi
11097
11198
0 commit comments