geninitrd.1

NAME

geninitrd - Generate an initrd (initial ramfs) which to be used for stateful install or stateless netboot.

SYNOPSIS

geninitrd imagename [--ignorekernelchk]

geninitrd [-h | --help]

DESCRIPTION

Generate the initrd for the osimage: imagename which is an xCAT object of osimage type.

Diskful Osimage

If the imagename is a stateful one (The provmethod attribute for the osimage is ‘install’), this command is used to rebuild the initrd to inject the new drivers from driver rpms or ‘update distro’ and copy the rebuilt initrd and new kernel (If there’s new kernel in ‘update distro’) to the directory /tftpboot/xcat/<imagename>.

If the initrd has been rebuilt by geninitrd, when run nodeset, the –noupdateinitrd option should be used to skip the rebuilding of initrd to improve the performance.

Three attributes of osimage object can be used to specify the Driver RPM location and Driver names for injecting new drivers to initrd.

netdrivers - comma separated driver names that need to be injected to the initrd. The postfix ‘.ko’ can be ignored. The netdrivers attribute must be set to specify the new driver list. If you want to load all the drivers from the driver rpms, using the keyword allupdate.

driverupdatesrc - comma separated driver rpm packages (full path should be specified)

osupdatename - comma separated ‘osdistroupdate’ object. Each ‘osdistroupdate’ object specifies a Linux distro update. When run geninitrd, ‘kernel-*.rpm’ will be searched from osdistroupdate.dirpath to get all the rpm packages and then search the drivers from the rpm packages.

Refer to the doc: Using_Linux_Driver_Update_Disk

Stateless Osimage

If the imagename is a stateless one (The provmethod attribute for the osimage is ‘netboot’), this command is used to generate the initrd from the rootimg which generated by ‘genimage’ command. So the ‘genimage’ must be run once before running the geninitrd command.

Two attributes of osimage object can be used to specify the Driver RPM location and Driver names for injecting new drivers to initrd.

netdrivers - comma separated driver names that need to be injected to the initrd. The postfix ‘.ko’ can be ignored. The netdrivers attribute must be set to specify the new driver list. If you want to load all the drivers from the driver rpms, using the keyword allupdate.

driverupdatesrc - comma separated driver rpm packages (full path should be specified)

Parameters

imagename specifies the name of an os image definition to be used. The specification for the image is stored in the osimage table and linuximage table.

--ignorekernelchk

Skip the kernel version checking when injecting drivers from osimage.driverupdatesrc. That means all drivers from osimage.driverupdatesrc will be injected to initrd for the specific target kernel.

RETURN VALUE

0 The command completed successfully.

1 An error has occurred.

EXAMPLES

1 To generate initrd for the osimage myimagename:

geninitrd myimagename

FILES

/opt/xcat/bin/geninitrd

/opt/xcat/bin/genimage

/opt/xcat/share/xcat/netboot/<OS>/genimage

SEE ALSO

geninitrd(1)|geninitrd.1, genimage(1)|genimage.1