A página man para dhclient-script
(8) define o comportamento cuidadosamente. Os scripts serão chamados para cada ação possível:
OPERATION When
dhclient
needs to invoke the client configuration script, it defines a set of variables in the environment, and then invokesCLIENTBINDIR/dhclient-script
. In all cases,$reason
is set to the name of the reason why the script has been invoked. The following reasons are currently defined:MEDIUM
,PREINIT
,BOUND
,RENEW
,REBIND
,REBOOT
,EXPIRE
,FAIL
,STOP
,RELEASE
,NBI
andTIMEOUT
.
Uma correção fácil para o seu script seria adicionar a linha apenas se ela ainda não existir. Uma correção melhor seria corresponder a $reason
para os valores de casos apropriados.
#!/bin/bash
grep -q '^options' /etc/resolv.conf ||
echo 'options timeout:1 attempts:1 rotate' >>/etc/resolv.conf
true