@@ -35,33 +35,40 @@ is_ip_key_empty '$U_SYS_USERS'
3535# Action #
3636# ----------------------------------------------------------#
3737
38- # Get ip owner
39- user= " $( get_ip_value ' $OWNER ' ) "
40- ip_status= " $( get_ip_value ' $STATUS ' ) "
38+ # Import ip variables
39+ source $VESTA /data/ips/ $ip
40+ cidr= $( convert_netmask $NETMASK )
4141
42- # Deleting interface
43- interface=$( /sbin/ifconfig | grep -B1 " dr: $ip " | head -n1 | cut -f1 -d \ )
42+ # Checking main ip on the interface
43+ interface=$( /sbin/ip addr | grep " $ip / $cidr " | awk ' {print $NF} ' )
4444if [ ! -z " $interface " ] && [ -z " $( echo $interface | cut -s -f2 -d :) " ]; then
4545 echo " Error: can't delete main IP address"
4646 log_event " $E_FORBIDEN " " $EVENT "
4747 exit $E_FORBIDEN
4848fi
49- if [ ! -z " $interface " ]; then
50- /sbin/ifconfig $interface down
5149
52- # Deleting startup conf on RHEL/CentOS/Fedora
53- if [ -e " /etc/sysconfig/network-scripts/ifcfg-$interface " ]; then
54- rm -f /etc/sysconfig/network-scripts/ifcfg-$interface
50+ # Deleting system ip
51+ if [ ! -z " $interface " ]; then
52+ /sbin/ip addr del $ip /$cidr dev $INTERFACE
53+ if [ " $? " -ne 0 ]; then
54+ echo " Error: can't delete system ip"
55+ log_event " $E_FORBIDEN " " $EVENT "
56+ exit $E_FORBIDEN
5557 fi
58+ fi
5659
57- # Deleting startup conf on Debian/Ubuntu
58- if [ -e " /etc/network/interfaces" ]; then
59- ip_str=$( grep -n $ip $ /etc/network/interfaces | cut -f1 -d:)
60- if [ ! -z " $ip_str " ]; then
61- first_str=$(( ip_str - 3 ))
62- last_str=$(( ip_str + 1 ))
63- sed -i " $first_str ,$last_str d" /etc/network/interfaces
64- fi
60+ # Deleting startup conf on RHEL/CentOS/Fedora
61+ if [ -e " /etc/sysconfig/network-scripts/ifcfg-$interface " ]; then
62+ rm -f /etc/sysconfig/network-scripts/ifcfg-$interface
63+ fi
64+
65+ # Deleting startup conf on Debian/Ubuntu
66+ if [ -e " /etc/network/interfaces" ]; then
67+ ip_str=$( grep -n $ip $ /etc/network/interfaces | cut -f1 -d:)
68+ if [ ! -z " $ip_str " ]; then
69+ first_str=$(( ip_str - 3 ))
70+ last_str=$(( ip_str + 1 ))
71+ sed -i " $first_str ,$last_str d" /etc/network/interfaces
6572 fi
6673fi
6774
@@ -92,7 +99,6 @@ if [ ! -z "$PROXY_SYSTEM" ]; then
9299 new_ips=$( echo " $rpaf_str " | sed " s/$ip //" )
93100 sed -i " s/$ips /$new_ips /g" $rpaf_conf
94101 fi
95-
96102fi
97103
98104
101107# ----------------------------------------------------------#
102108
103109# Updating user conf
104- if [ ! -z " $user " ]; then
105- decrease_user_value " $user " ' $IP_OWNED'
110+ if [ ! -z " $OWNER " ]; then
111+ decrease_user_value " $OWNER " ' $IP_OWNED'
106112fi
107113
108- if [ " $user " = ' admin' ]; then
109- if [ " $ip_status " = ' shared' ]; then
114+ if [ " $OWNER " = ' admin' ]; then
115+ if [ " $STATUS " = ' shared' ]; then
110116 for user in $( ls $VESTA /data/users/) ; do
111117 decrease_user_value " $user " ' $IP_AVAIL'
112118 done
113- else
114- decrease_user_value ' admin' ' $IP_AVAIL'
115119 fi
116120else
117- decrease_user_value " $user " ' $IP_AVAIL'
118- decrease_user_value ' admin' ' $IP_AVAIL'
121+ decrease_user_value " $OWNER " ' $IP_AVAIL'
119122fi
120123
121-
122124# Adding task to the vesta pipe
123125$BIN /v-restart-web
124126if [ $? -ne 0 ]; then
0 commit comments