#!/bin/bash # info: update databases disk usage # options: user # # The function recalculates disk usage for all user databases. #----------------------------------------------------------# # Variable&Function # #----------------------------------------------------------# # Argument defenition user=$1 # Importing variables source $VESTA/conf/vars.conf source $V_CONF/vesta.conf source $V_FUNC/shared.func source $V_FUNC/db.func #----------------------------------------------------------# # Verifications # #----------------------------------------------------------# # Checking arg number check_args '1' "$#" 'user' # Checking argument format format_validation 'user' # Checking web system is enabled is_system_enabled 'db' # Checking user is_user_valid #----------------------------------------------------------# # Action # #----------------------------------------------------------# # Defining config conf="$V_USERS/$user/db.conf" # Defining fileds to select field='$DB' # Defining search string search_string="SUSPEND='no'" # Parsing unsuspeneded domains databases=$(db_clear_search) for database in $databases; do # Define database variables db_user=$(get_db_value '$USER') host=$(get_db_value '$HOST') type=$(get_db_value '$TYPE') # Switching on db type case $type in mysql) disk_usage=$(get_disk_db_mysql); ret_val="$?" ;; pgsql) disk_usage=$(get_disk_db_pgsql); ret_val="$?" ;; esac # Updating disk value in config if [ "$ret_val" -eq '0' ]; then update_db_base_value '$U_DISK' "$disk_usage" fi done #----------------------------------------------------------# # Vesta # #----------------------------------------------------------# # Recalculating user disk space disk_size=$(get_usr_disk) update_user_value "$user" '$U_DISK' "$disk_size" # Logging log_event 'system' "$V_EVENT" exit