added child list function

This commit is contained in:
Serghey Rodin 2011-08-26 09:59:24 +03:00
commit 7fede99297
4 changed files with 99 additions and 7 deletions

View file

@ -166,9 +166,8 @@ U_MAIL_DOMAINS='0'
DATE='$V_DATE'" > $V_USERS/$user/user.conf DATE='$V_DATE'" > $V_USERS/$user/user.conf
# Filling owner config # Filling owner config
ROLE=$(echo "$role" | tr "[:lower:]" "[:upper:]")
if [ "$user" != 'vesta' ]; then if [ "$user" != 'vesta' ]; then
echo "$ROLE='$user'" >> $V_USERS/$owner/child.conf echo "USER='$user'" >> $V_USERS/$owner/child.conf
increase_user_value "$owner" 'U_CHILDS' increase_user_value "$owner" 'U_CHILDS'
fi fi

View file

@ -111,6 +111,14 @@ if [ ! -z "$statp" ]; then
done done
fi fi
# Deleteing user from parent
childc=$(grep -n "USER='$user'" $V_USERS/child.conf |cut -d : -f 1|sort -n -r)
if [ ! -z "$childc" ]; then
for str in $childc; do
sed -i "$str d" $V_USERS/child.conf
done
fi
# Removing system user # Removing system user
userdel -f $user userdel -f $user
rm -rf $V_HOME/$user rm -rf $V_HOME/$user

55
bin/v_list_sys_user_childs Executable file
View file

@ -0,0 +1,55 @@
#!/bin/bash
# info: listing user childs
#----------------------------------------------------------#
# Variable&Function #
#----------------------------------------------------------#
# Argument defenition
user="$1"
format="${2-shell}"
limit="${3-1000}"
offset="${4-1}"
# Importing variables
source $VESTA/conf/vars.conf
source $V_FUNC/shared_func.sh
#----------------------------------------------------------#
# Verifications #
#----------------------------------------------------------#
# Checking arg number
check_args '1' "$#" 'user [format] [limit] [offset]'
# Checking argument format
format_validation 'user' 'limit' 'offset'
# Checking user
is_user_valid
#----------------------------------------------------------#
# Action #
#----------------------------------------------------------#
# Defining fileds to select
fields='$USER'
# Listing domains
case $format in
json) childs_json_list ;;
shell) childs_shell_list ;;
*) check_args '1' '0' 'user [format] [limit] [offset]'
esac
#----------------------------------------------------------#
# Vesta #
#----------------------------------------------------------#
# Logging
log_event 'system' "$V_EVENT"
exit $OK

View file

@ -1235,13 +1235,14 @@ usr_shell_list() {
} }
usrns_json_list() { usrns_json_list() {
ns=$(grep "NS[1|2]=" $V_USERS/$user/user.conf |cut -f 2 -d \') ns=$(grep "^NS='" $V_USERS/$user/user.conf |cut -f 2 -d \')
# Print top bracket # Print top bracket
echo '[' echo '['
i=1 i=1
nslistc=$(echo -e "${ns//,/\n}"|wc -l)
# Listing servers # Listing servers
for nameserver in $ns;do for nameserver in ${ns//,/ };do
if [ "$i" -eq 1 ]; then if [ "$i" -ne "$nslistc" ]; then
echo -e "\t\"$nameserver\"," echo -e "\t\"$nameserver\","
else else
echo -e "\t\"$nameserver\"" echo -e "\t\"$nameserver\""
@ -1253,15 +1254,44 @@ usrns_json_list() {
} }
usrns_shell_list() { usrns_shell_list() {
ns=$(grep "NS[1|2]=" $V_USERS/$user/user.conf |cut -f 2 -d \') ns=$(grep "^NS='" $V_USERS/$user/user.conf |cut -f 2 -d \')
# Print result # Print result
echo "NAMESERVER" echo "NAMESERVER"
echo "----------" echo "----------"
for nameserver in $ns;do for nameserver in ${ns//,/ };do
echo "$nameserver" echo "$nameserver"
done done
} }
childs_json_list() {
# Print result
echo '['
if [ -e "$V_USERS/$user/child.conf" ]; then
i=1
childlistc=$(wc -l $V_USERS/$user/child.conf |cut -f -1 -d ' ')
for child in $(cat $V_USERS/$user/child.conf|cut -f 2 -d \');do
if [ "$i" -ne "$childlistc" ]; then
echo -e "\t\"$child\","
else
echo -e "\t\"$child\""
fi
i=$((i + 1))
done
fi
echo ']'
}
childs_shell_list() {
# Print result
echo "CHILDS"
echo "----------"
if [ -e "$V_USERS/$user/child.conf" ]; then
for child in $(cat $V_USERS/$user/child.conf|cut -f 2 -d \');do
echo "$child"
done
fi
}
get_usr_disk() { get_usr_disk() {
size='0' size='0'