2.2 List

This are the keys and values the kernel takes, and under which circumstances:

root=<device>

Device to mount as root, if any.

rootuuid=<uuid>

Used instead of root. It addresses the root device with a UUID instead of a device name. This can be used to gain some device-independence, for example, for addressing a given partition in a GPT drive regardless the containing device.

init=<path>

Path to a program that will be booted by the kernel when finished loading. The program will be started with stdin set to /dev/null, and stdout and stderr set to /dev/console.

initargs=<args>

Arguments to pass to init. If environment variables are what is desired, consider the trick of booting in typical UNIX fashion /bin/env <vars> <init command>.

noprogaslr

The offset of loaded programs in virtual memory is randomized when loading if possible, this option disables it system-wide at boot time and hardcodes it to the lowest available value.

nolocaslr

The same as noprogaslr but applied to memory locations like stacks and memory allocation.