tools: hv: ignore a NIC if it has been configured

Let bondvf.sh ignore this NIC if it has been configured, to prevent
user configuration from being overwritten unexpectly.

Signed-off-by: Simon Xiao <sixiao@microsoft.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
sixiao@microsoft.com 2017-07-14 10:47:20 -07:00 коммит произвёл David S. Miller
Родитель 98524e04e0
Коммит 1c3a044c60
1 изменённых файлов: 25 добавлений и 2 удалений

Просмотреть файл

@ -211,6 +211,30 @@ function create_bond {
echo $'\nBond name:' $bondname echo $'\nBond name:' $bondname
if [ $distro == ubuntu ]
then
local mainfn=$cfgdir/interfaces
local s="^[ \t]*(auto|iface|mapping|allow-.*)[ \t]+${bondname}"
grep -E "$s" $mainfn
if [ $? -eq 0 ]
then
echo "WARNING: ${bondname} has been configured already"
return
fi
elif [ $distro == redhat ] || [ $distro == suse ]
then
local fn=$cfgdir/ifcfg-$bondname
if [ -f $fn ]
then
echo "WARNING: ${bondname} has been configured already"
return
fi
else
echo "Unsupported Distro: ${distro}"
return
fi
echo configuring $primary echo configuring $primary
create_eth_cfg_pri_$distro $primary $bondname create_eth_cfg_pri_$distro $primary $bondname
@ -219,8 +243,6 @@ function create_bond {
echo creating: $bondname with primary slave: $primary echo creating: $bondname with primary slave: $primary
create_bond_cfg_$distro $bondname $primary $secondary create_bond_cfg_$distro $bondname $primary $secondary
let bondcnt=bondcnt+1
} }
for (( i=0; i < $eth_cnt-1; i++ )) for (( i=0; i < $eth_cnt-1; i++ ))
@ -228,5 +250,6 @@ do
if [ -n "${list_match[$i]}" ] if [ -n "${list_match[$i]}" ]
then then
create_bond ${list_eth[$i]} ${list_match[$i]} create_bond ${list_eth[$i]} ${list_match[$i]}
let bondcnt=bondcnt+1
fi fi
done done