service examples: if iface do not exist, retry upping it

I've had a case of a machine where eth0 was appearing a bit later
after the boot, and appearing _downed_. ifplugd then fails to detect
"link up". Thus, depending on how service startup
("ip link set dev eth0 up") races with driver initialization,
ethernet randomly fails to initialize on boot.

Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
This commit is contained in:
Denys Vlasenko 2019-04-05 18:38:12 +02:00
parent 43d09e79db
commit 1e474d3d93
5 changed files with 8 additions and 8 deletions

View File

@ -8,9 +8,9 @@ pwd="$PWD"
if="${PWD##*/dhcp_}" if="${PWD##*/dhcp_}"
echo "* Upping iface $if" echo "* Upping iface $if"
ip link set dev "$if" up ip link set dev "$if" up || { sleep 5; exit; }
echo "* Starting udhcpc" echo "* Starting udhcpc on $if [$$]"
exec \ exec \
env - PATH="$PATH" \ env - PATH="$PATH" \
softlimit \ softlimit \

View File

@ -8,12 +8,12 @@ pwd="$PWD"
if="${PWD##*/dhcpd_}" if="${PWD##*/dhcpd_}"
echo "* Upping iface $if" echo "* Upping iface $if"
ip link set dev $if up ip link set dev $if up || { sleep 5; exit; }
>>udhcpd.leases >>udhcpd.leases
sed 's/^interface.*$/interface '"$if/" -i udhcpd.conf sed 's/^interface.*$/interface '"$if/" -i udhcpd.conf
echo "* Starting udhcpd" echo "* Starting udhcpd on $if [$$]"
exec \ exec \
env - PATH="$PATH" \ env - PATH="$PATH" \
softlimit \ softlimit \

View File

@ -9,7 +9,7 @@ pwd="$PWD"
if="${PWD##*/ifplugd_}" if="${PWD##*/ifplugd_}"
echo "* Upping iface $if" echo "* Upping iface $if"
ip link set dev "$if" up ip link set dev "$if" up || { sleep 5; exit; }
echo "* Starting ifplugd on $if [$$]" echo "* Starting ifplugd on $if [$$]"
exec \ exec \

View File

@ -14,7 +14,7 @@ ip link set dev "$if" up || { sleep 5; exit; }
##echo "* Powersave disable on $if" ##echo "* Powersave disable on $if"
##iw dev "$if" set power_save off ##iw dev "$if" set power_save off
echo "* Starting wpa_supplicant" echo "* Starting wpa_supplicant on $if [$$]"
exec \ exec \
env - PATH="$PATH" \ env - PATH="$PATH" \
softlimit \ softlimit \

View File

@ -8,9 +8,9 @@ pwd="$PWD"
if="${PWD##*/zcip_}" if="${PWD##*/zcip_}"
echo "* Upping iface $if" echo "* Upping iface $if"
ip link set dev "$if" up ip link set dev "$if" up || { sleep 5; exit; }
echo "* Starting zcip" echo "* Starting zcip on $if [$$]"
exec \ exec \
env - PATH="$PATH" \ env - PATH="$PATH" \
softlimit \ softlimit \