STANNIX Community


Manual: nm-initrd-generator

NM-INITRD-GENERATOR(8)				    System Administration			      NM-INITRD-GENERATOR(8)

NAME
       nm-initrd-generator - early boot NetworkManager configuration generator

SYNOPSIS

       nm-initrd-generator [OPTIONS...] -- [CMDLINE...]

DESCRIPTION
       nm-initrd-generator scans the command line for options relevant to network configuration and creates configuration
       files for an early instance of NetworkManager run from the initial ramdisk during early boot.

OPTIONS
       -c | --connections-dir path
	   Output connection directory.

       -p | --persistent-connections-dir path
	   Persistent connection directory. If it exists, rd.neednet will not cause a default connection to be generated in
	   absence of other options.

       -i | --initrd-data-dir path
	   Output directory for initrd data (e.g. hostname).

       -d | --sysfs-dir path
	   The sysfs mount point.

       -r | --run-config-dir path
	   Output directory for config files.

       -s | --stdout
	   Dump connections to standard output. Useful for debugging.

       CMDLINE
	   The options that appear on the kernel command line. The following options are recognized:
	       ip
	       rd.route
	       bridge
	       bond
	       team
	       vlan
	       ib.pkey
	       bootdev
	       nameserver
	       net.ifnames
	       rd.peerdns
	       rd.iscsi.ibft
	       rd.nvmf.nonbft
	       rd.bootif
	       rd.neednet
	       rd.ethtool
	       rd.net.dns
	       rd.net.dns-backend
	       rd.net.dns-resolve-mode
	       rd.net.timeout.dhcp
	       rd.net.dhcp.client-id
	       rd.net.dhcp.retry
	       rd.net.dhcp.vendor-class
	       rd.net.dhcp.dscp
	       rd.net.timeout.carrier
	       rd.znet
	       rd.znet_ifname
	       BOOTIF
	   Please consult the dracut.cmdline(7) manual for the documentation of the precise format of the values supported.

DIFFERENCES FROM THE NETWORK-LEGACY DRACUT MODULE
       nm-initrd-generator generates a set of connections that are then configured by the NetworkManager instance running in
       the initrd. There are some differences in behavior compared to the network-legacy dracut module:

       •   When an interface is configured with a static address and a gateway, the network-legacy module waits that the
	   gateway responds to arping requests before proceeding, while NetworkManager doesn't.

       •   network-legacy configures interfaces one by one in the order in which they are announced by udev. If multiple
	   interfaces specify a hostname (from command line or from DHCP), the one from the last interface activated wins.
	   With NetworkManager, hostnames from command line have higher precedence over ones from DHCP, and the last that
	   appears in the command line wins.

       •   NetworkManager supports the ib.pkey=PARENT.PKEY argument to set up an Infiniband partition on IPoIB parent device
	   PARENT using the specified partition key PKEY. The partition key must be in hexadecimal notation without leading
	   "0x", for example "ib.pkey=ib0.8004".

       •   NetworkManager supports the rd.ethtool=INTERFACE:AUTONEG:SPEED kernel command line option to set up ethtool NIC
	   configuration parameters AUTONEG and SPEED. The INTERFACE being configured must be specified, and the other
	   parameters are optional and can be left blank. When SPEED is set, duplex mode is automatically set to 'full'.
	   INTERFACE accepts string values, AUTONEG accepts boolean values (true and false / on or off / 0 or 1), and SPEED
	   accepts positive integer values.

       •   NetworkManager supports the rd.net.dns-backend=VALUE kernel command line option to configure the DNS processing
	   mode. See the description of the "dns" key in the "main section" paragraph of NetworkManager.conf(5). For
	   example: rd.net.dns-backend=systemd-resolved, rd.net.dns-backend=dnsconfd

       •   NetworkManager supports the rd.net.dns=SERVER kernel command line option to configure a global (non
	   interface-specific) DNS server. The option can be specified multiple time to add more than one server. Each
	   server can be specified as a plain IP or as an URI according to the description in the "global-dns-domains
	   sections" paragraph of NetworkManager.conf(5). For example: rd.net.dns=2001:db8::1,
	   rd.net.dns=dns+tls://192.0.2.0, rd.net.dns=dns+tls://[2001:db8::2]:5353#example.org. In addition, it supports
	   configuring the "resolve-mode" key in the global DNS configuration via the rd.net.dns-resolve-mode command line
	   option.

       •   NetworkManager supports the rd.net.dhcp.dscp={CS0|CS4|CS6} kernel command line option to set a specific DSCP
	   (TOS) value in the IP header of DHCP messages.

       •   NetworkManager supports the rd.net.dhcp.client-id=interface:client-id kernel command line option to set a
	   specific DHCPv4 client identifier for the given interface. The client-id can be specified either as a sequence of
	   bytes in hexadecimal format separated by dashes, or as the character '@' followed by a non-empty string. When
	   using the second format, NetworkManager prepends a zero byte to the given string, according to section 9.14 of
	   RFC 2132. See the "ipv4.dhcp-client-id" section of nm-settings-nmcli(5) for more details. Examples:
	   rd.net.dhcp.client-id=eth0:01-52-54-00-45-87-42, rd.net.dhcp.client-id=enp1s0:@example.com.

EXIT STATUS
       nm-initrd-generator exits with status 0. It ignores unrecognized options and prints an error message if it encounters
       a malformed option.

SEE ALSO
       dracut.cmdline(7), NetworkManager(8), nm-settings-nmcli(5).

NetworkManager 1.54.3										      NM-INITRD-GENERATOR(8)