# Converts ip configuration format given by the pxe pre boot provider to a # dracut compatible static ip configuration. # TODO warn 'LOAD ...........................' warn 'LOAD ...........................' source /usr/lib/test-library.sh for parameter in $(getargs ip=); do local temp="$parameter:" set -- while [ -n "$temp" ]; do set -- "$@" "${temp%%:*}" temp=${temp#*:} done [ -n "$1" ] && ip=$1 [ -n "$2" ] && server_ip=$2 [ -n "$3" ] && gateway_ip=$3 [ -n "$4" ] && net_mask=$4 warn "PXE given net configuration: ip: $ip server_ip: $server_ip gateway_ip: $gateway_ip net_mask: $net_mask" local final_dracut_ip_config="$ip::$gateway_ip:$net_mask:dracut_test_client:enp0s3:none" warn "Final dracut ip config: $final_dracut_ip_config" #final_dracut_ip_config="enp0s3:dhcp" replace_cmd ip "$final_dracut_ip_config" done # NOTE: Doesn't work since dracuts needed version of mount doesn't support # binds. #cat /proc/cmdline | sed --regexp-extended 's/ip=[^ ]+//g' \ # >"$temporary_kernel_commandline_file_path" && \ #mount -n --rbind -o ro "$temporary_kernel_commandline_file_path" /proc/cmdline