|
|
|
#!/bin/bash
|
|
|
|
|
|
|
|
# called by dracut
|
|
|
|
check() {
|
|
|
|
local _program
|
|
|
|
|
|
|
|
require_binaries ip arping dhclient || return 1
|
|
|
|
|
|
|
|
return 255
|
|
|
|
}
|
|
|
|
|
|
|
|
# called by dracut
|
|
|
|
depends() {
|
|
|
|
echo "kernel-network-modules"
|
|
|
|
return 0
|
|
|
|
}
|
|
|
|
|
|
|
|
# called by dracut
|
|
|
|
installkernel() {
|
|
|
|
return 0
|
|
|
|
}
|
|
|
|
|
|
|
|
# called by dracut
|
|
|
|
install() {
|
|
|
|
local _arch _i _dir
|
|
|
|
inst_multiple ip arping dhclient sed
|
|
|
|
inst_multiple -o ping ping6
|
|
|
|
inst_multiple -o brctl
|
|
|
|
inst_multiple -o teamd teamdctl teamnl
|
|
|
|
inst_simple /etc/libnl/classid
|
|
|
|
inst_script "$moddir/ifup.sh" "/sbin/ifup"
|
|
|
|
inst_script "$moddir/netroot.sh" "/sbin/netroot"
|
|
|
|
inst_script "$moddir/dhclient-script.sh" "/sbin/dhclient-script"
|
|
|
|
inst_simple "$moddir/net-lib.sh" "/lib/net-lib.sh"
|
|
|
|
inst_simple -H "/etc/dhclient.conf"
|
|
|
|
cat "$moddir/dhclient.conf" >> "${initdir}/etc/dhclient.conf"
|
|
|
|
inst_hook pre-udev 50 "$moddir/ifname-genrules.sh"
|
|
|
|
inst_hook pre-udev 60 "$moddir/net-genrules.sh"
|
|
|
|
inst_hook cmdline 91 "$moddir/dhcp-root.sh"
|
|
|
|
inst_hook cmdline 92 "$moddir/parse-ibft.sh"
|
|
|
|
inst_hook cmdline 95 "$moddir/parse-vlan.sh"
|
|
|
|
inst_hook cmdline 96 "$moddir/parse-bond.sh"
|
|
|
|
inst_hook cmdline 96 "$moddir/parse-team.sh"
|
|
|
|
inst_hook cmdline 97 "$moddir/parse-bridge.sh"
|
|
|
|
inst_hook cmdline 98 "$moddir/parse-ip-opts.sh"
|
|
|
|
inst_hook cmdline 99 "$moddir/parse-ifname.sh"
|
|
|
|
inst_hook cleanup 10 "$moddir/kill-dhclient.sh"
|
|
|
|
|
|
|
|
_arch=$(uname -m)
|
|
|
|
|
|
|
|
inst_libdir_file {"tls/$_arch/",tls/,"$_arch/",}"libnss_dns.so.*" \
|
|
|
|
{"tls/$_arch/",tls/,"$_arch/",}"libnss_mdns4_minimal.so.*"
|
|
|
|
|
|
|
|
dracut_need_initqueue
|
|
|
|
}
|
|
|
|
|