Quando os scripts em ifup.d são chamados, uma enorme seleção de variáveis de ambiente é passada para ele, relacionada à configuração da interface específica. Então, por exemplo, se a configuração da sua interface parecesse assim.
iface eth0 inet manual
dofoo on
Em seguida, seu script receberia uma variável como $IF_DOFOO
com um valor de on
.
Sabendo que você poderia colocar algo no início do seu script como
#!/bin/bash
if [ -z "$IF_DOFOO" ] ; then
# this script only applies to interface flagged as dofoo
exit 0
fi
... Doing the foo.
Com isso, esse script pode ser facilmente colocado em if-up.d.
É claro que você também pode simplesmente olhar para o valor $IFACE
e codificar seu script para executar somente uma interface específica ou combiná-lo com alguma outra fonte externa de configuração. Veja os outros scripts em if-up.d
para alguns exemplos do que você pode fazer.