Almalinux 9 bad order disk installation

Hi,

If I install Almalinux 9 with a specific order disk, almalinux after installation changes it completely.

Example:

Disk order in Raid and installation:

sda / 446.63GB
sdb / 3.49 TiB
sdc / 7.3 TiB

But, after install, the order is broken:

sda / 7.3 TiB (should be sdc)
sdb / 3.49 TiB
sdc / 446.63GB (should be sda)

Please help, the problem only appear in AlmaLinux 9, but Almalinux 8 work good.

Thanks,

Its not “order”, it is “names”.

Each filesystem contains UUID and the installer sets up the mounts (/etc/fstab) with UUIDs, not with the /dev/sd* names – the names are not used.

There are more names in /dev/disk/by-*/ and some of those (like the UUID) are persistent.


The real question is, where do you need the names?

To facilitate the maintenance of more than 100 servers that have the same name order, error readings, analysis, it is preferred that all servers have the same disk nomenclature.

But we don’t understand why Almalinux 9 is the only operating system that changes names after installation, we have previously worked with various versions of Ubuntu, CentOS, Debian and even Almalinux 8, and we never had the name order problem.

Please help, thanks,

Does any of those “other systems” have same version of kernel and systemd?
Some say that those components enumerate devices “in parallel”, which leads to randomness. Perhaps even on every boot.

There is rhel-system-roles.storage, which Ansible can use to configure storage in el9.
It says:

disks

A list which specifies the set of disks to use as backing storage for the pool.
Supported identifiers include: device node (like /dev/sda or /dev/mapper/mpathb),
device node basename (like sda or mpathb), /dev/disk/ symlink
(like /dev/disk/by-id/wwn-0x5000c5005bc37f3f).

There are multiple names in /dev/disk/by-* Some of them are persistent.


A question is, how to get those persistent names? Should one query each machine
and store the suitable identifiers in, say inventory that the maintenance routines then use?

The /dev/sd* type names have not been stable for at least a decade. Prior to that they were predicable since they reflected the order in which the buses were walked during initialisation. Nowadays they reflect the order in which the adapters report back to the boot process. Commonly this will be the same across boots, but is not guaranteed. CentOS 7 and 8 and Alma 8 and 9 all behaved like this.