Portál AbcLinuxu, 12. května 2025 04:13
if ! grep `echo ${1}: | cut -f 1 -d :`: /proc/net/dev 1> /dev/null ; then # no interface yet
if /sbin/modprobe -c | grep -w "alias ${1}" | grep -vw "alias ${1} off" > /dev/null ; then
echo "/etc/rc.d/rc.inet1: /sbin/modprobe ${1}" | $LOGGER
/sbin/modprobe ${1}
fi
fi
if grep `echo ${1}: | cut -f 1 -d :`: /proc/net/dev 1> /dev/null ; then # interface exists
if ! /sbin/ifconfig | grep -w "${1}" 1>/dev/null || \
Nejsem si ale zcela jistý a v dokumentaci jsem nenašel, zda programy modprobe, resp. insmod, garantují kompletní inicializaci před návratem do volajícího procesu.
Init skripty jsou špatné řešení, mělo by se to řešit přes hotplug.Opravte mě, jestli se pletu, ale hotplug je obsluhován skripty, které dělají totéž, ale velmi pravděpodobně s takovým předstihem, že k "race conditions" většinou nedojde.
Navedl jste mě správně. Přesunutí k dřívějšímu spuštění hotplug susbsystému v základním inicializačním skriptu vedlo k zjevnému odstranění problému.
Ještě jednou díky.
Opravte mě, jestli se pletu, ale hotplug je obsluhován skripty, které dělají totéž, ale velmi pravděpodobně s takovým předstihem, že k "race conditions" většinou nedojde.Hotplug dělá věci v okamžiku, kdy je dané zařízení připraveno, což se dozví eventem z kernelu.
Tiskni
Sdílej:
ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.