O parâmetro que você precisa passar para inicializar a partir do UUID é PARTUUID
. Portanto, deve ser root=PARTUUID=666c2eee-193d-42db-a490-4c444342bd4e
.
A documentação explica por que ele está voltando com unknown-block(0,0)
:
kernel-parameters.txt :
root= [KNL] Root filesystem
See name_to_dev_t comment in init/do_mounts.c.
init / do_mounts.c :
/*
* Convert a name into device number. We accept the following variants:
*
* 1) device number in hexadecimal represents itself
* 2) /dev/nfs represents Root_NFS (0xff)
* 3) /dev/<disk_name> represents the device number of disk
* 4) /dev/<disk_name><decimal> represents the device number
* of partition - device number of disk plus the partition number
* 5) /dev/<disk_name>p<decimal> - same as the above, that form is
* used when disk name of partitioned disk ends on a digit.
* 6) PARTUUID=00112233-4455-6677-8899-AABBCCDDEEFF representing the
* unique id of a partition if the partition table provides it.
* The UUID may be either an EFI/GPT UUID, or refer to an MSDOS
* partition using the format SSSSSSSS-PP, where SSSSSSSS is a zero-
* filled hex representation of the 32-bit "NT disk signature", and PP
* is a zero-filled hex representation of the 1-based partition number.
* 7) PARTUUID=<UUID>/PARTNROFF=<int> to select a partition in relation to
* a partition with a known unique id.
*
* If name doesn't have fall into the categories above, we return (0,0).
* block_class is used to check if something is a disk name. If the disk
* name contains slashes, the device name has them replaced with
* bangs.
*/
O último bit no final diz que, se não conseguir entender o valor, ele retornará (0,0)
, daí o seu erro.