NVMe device names change across reboots
Because UEK R5 adds support for NVMe subsystems and
multipathing, enumerated device names that are generated by the
kernel are not stable. This behavior is similar to the way that
other block devices are handled by the kernel. If you use
enumerated kernel instance names to handle mounts in your
fstab
file, the mounts may fail or behave
unpredictably.
Never use enumerated kernel instance names when referring to block devices. Instead, use the UUID, partition label, or file system label to refer to any block device, including an NVMe device. If you are uncertain of the device UUID or labels, use the blkid command to view this information.
Prior to multipathing, a subsystem number would typically map to
the controller number. Therefore, you could assume that the
subsystem at /dev/nvme0n1
was affiliated with
controller /dev/nvme0
. This correlation is no
longer the case. For multipathing to be enabled, a subsystem
could have multiple controllers. In this case,
/dev/nvme0n1
could just as easily be
affiliated with controllers at /dev/nvme1
and
/dev/nvme2
. Currently, no specific
correlation between the subsystem device name and the controller
device name exists.