busybox/examples/var_service/dhcp_if/run
Denys Vlasenko 1e474d3d93 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>
2019-04-05 18:41:48 +02:00

24 lines
365 B
Bash
Executable File

#!/bin/sh
exec 2>&1
exec </dev/null
pwd="$PWD"
if="${PWD##*/dhcp_}"
echo "* Upping iface $if"
ip link set dev "$if" up || { sleep 5; exit; }
echo "* Starting udhcpc on $if [$$]"
exec \
env - PATH="$PATH" \
softlimit \
setuidgid root \
udhcpc -vv \
--hostname=null \
--foreground \
--interface="$if" \
--pidfile="$pwd/udhcpc.pid" \
--script="$pwd/dhcp_handler"