Ajout de deux variables globales contenant le chemin des binaires "ip" et "bridge" afin de permettre leur exécution en dehors de "$PATH"

ycharbi
ycharbi 11 months ago
parent 1477ef8072
commit 1d657e728b

@ -5,6 +5,8 @@
base_chemin_mv="/tmp/ramdisk/qemu-adm"
bin_qemu="/usr/bin/qemu-system-x86_64"
bin_qemu_img="/usr/bin/qemu-img"
bin_ip="/usr/bin/ip"
bin_bridge="/usr/sbin/bridge"
chemin_services_demons="/usr/local/etc/systemd/system"
chemin_services_production="/etc/systemd/system"
nom_script=$(basename $0)
@ -551,11 +553,11 @@ genCmdIntRzo(){
# Création d'une interface simple
if [[ "${pont_init}" -eq 1 && "${vlan_init}" -eq 2 && "${interface_init}" -eq 1 ]]; then
# Commandes à executer au demarrage
commandes_a_executer_on+=( "ip tuntap add ${interface} mode tap" )
commandes_a_executer_on+=( "ip link set ${interface} up" )
commandes_a_executer_on+=( "ip link set ${interface} master ${pont}" )
commandes_a_executer_on+=( "${bin_ip} tuntap add ${interface} mode tap" )
commandes_a_executer_on+=( "${bin_ip} link set ${interface} up" )
commandes_a_executer_on+=( "${bin_ip} link set ${interface} master ${pont}" )
# Commandes à exectuer à l'arrêt
commandes_a_executer_off+=( "ip link del ${interface}" )
commandes_a_executer_off+=( "${bin_ip} link del ${interface}" )
# Réinitialisation des variables témoins
pont_init=0
@ -565,13 +567,13 @@ genCmdIntRzo(){
# Création d'une interface non étiqueté (access)
elif [[ "${pont_init}" -eq 1 && "${vlan_init}" -eq 1 && "${interface_init}" -eq 1 ]]; then
# Commandes à executer au demarrage
commandes_a_executer_on+=( "ip tuntap add ${interface} mode tap" )
commandes_a_executer_on+=( "ip link set ${interface} up" )
commandes_a_executer_on+=( "ip link set ${interface} master ${pont}" )
commandes_a_executer_on+=( "bridge vlan del dev ${interface} vid 1 PVID untagged master" )
commandes_a_executer_on+=( "bridge vlan add dev ${interface} vid ${vlan} pvid untagged master" )
commandes_a_executer_on+=( "${bin_ip} tuntap add ${interface} mode tap" )
commandes_a_executer_on+=( "${bin_ip} link set ${interface} up" )
commandes_a_executer_on+=( "${bin_ip} link set ${interface} master ${pont}" )
commandes_a_executer_on+=( "${bin_bridge} vlan del dev ${interface} vid 1 PVID untagged master" )
commandes_a_executer_on+=( "${bin_bridge} vlan add dev ${interface} vid ${vlan} pvid untagged master" )
# Commandes à exectuer à l'arrêt
commandes_a_executer_off+=( "ip link del ${interface}" )
commandes_a_executer_off+=( "${bin_ip} link del ${interface}" )
# Réinitialisation des variables témoins
pont_init=0
@ -580,15 +582,15 @@ genCmdIntRzo(){
# Création d'une interface étiqueté (trunk)
elif [[ "${pont_init}" -eq 1 && "${ieee8021q_init}" -eq 1 && "${interface_init}" -eq 1 ]]; then
commandes_a_executer_on+=( "ip tuntap add ${interface} mode tap" )
commandes_a_executer_on+=( "ip link set ${interface} up" )
commandes_a_executer_on+=( "ip link set ${interface} master ${pont}" )
commandes_a_executer_on+=( "bridge vlan del dev ${interface} vid 1 PVID untagged master" )
commandes_a_executer_on+=( "${bin_ip} tuntap add ${interface} mode tap" )
commandes_a_executer_on+=( "${bin_ip} link set ${interface} up" )
commandes_a_executer_on+=( "${bin_ip} link set ${interface} master ${pont}" )
commandes_a_executer_on+=( "${bin_bridge} vlan del dev ${interface} vid 1 PVID untagged master" )
for ((id_label_vlan=0 ; "${nb_params_label}" - "${id_label_vlan}" ; id_label_vlan++)); do
commandes_a_executer_on+=( "bridge vlan add dev ${interface} vid ${label_vlan[${id_label_vlan}]} tagged master" )
commandes_a_executer_on+=( "${bin_bridge} vlan add dev ${interface} vid ${label_vlan[${id_label_vlan}]} tagged master" )
done
# Commandes à exectuer à l'arrêt
commandes_a_executer_off+=( "ip link del ${interface}" )
commandes_a_executer_off+=( "${bin_ip} link del ${interface}" )
# Réinitialisation des variables témoins
pont_init=0
@ -611,7 +613,7 @@ recupParams(){
# Récupération des données d'après le fichier de configuration
if [ "${nom_param}" == "PONT" ]; then
if [[ ${verif_params} == "vrai" ]]; then
if [[ $(ip link show "${val_param}" 2> /dev/null) ]]; then
if [[ $(${bin_ip} link show "${val_param}" 2> /dev/null) ]]; then
pont="${val_param}"
pont_init=1
else
@ -651,7 +653,7 @@ recupParams(){
done
elif [ "${nom_param}" == "INTERFACE" ]; then
if [[ ${verif_params} == "vrai" ]]; then
if [[ ! $(ip link show "${val_param}" 2> /dev/null) ]]; then
if [[ ! $(${bin_ip} link show "${val_param}" 2> /dev/null) ]]; then
if [[ "${vlan_init}" -eq 1 || "${vlan_init}" -eq 2 || "${ieee8021q_init}" -eq 1 ]]; then
interface="${val_param}"
interface_init=1

Loading…
Cancel
Save