Bugzilla – Bug 1228135
Missing by-uuid block device links (s390x)
Last modified: 2024-07-19 07:58:04 UTC
I'm working on enabling the encrypted image for s390x in my IBS home project(*). Although the image was built successfully, the initrd in the ZIPL partition contained an empty /etc/crypttab so the kernel couldn't mount the encrypted root partition. After modifying kiwi to show more information of the build environment, I found that most by-uuid links were missing. Per 'blkid', there were several partitions in the system: [ 200s] /dev/mapper/luksRoot: LABEL="ROOT" UUID="d50115f5-dad2-46d9-beec-9520c814b8ed" UUID_SUB="1a4b0c9b-fdd1-42a5-8fc2-b71fdeab0acd" BLOCK_SIZE="4096" TYPE="btrfs" [ 200s] /dev/mapper/loop0p2: UUID="9ce96409-07df-4bc8-bc28-0f12e68e18c5" TYPE="crypto_LUKS" PARTUUID="634601de-02" [ 200s] /dev/mapper/loop0p1: LABEL="BOOT" UUID="6d0a34c1-00eb-4433-afb4-f0c669a401bb" BLOCK_SIZE="1024" TYPE="ext2" PARTUUID="634601de-01" [ 200s] /dev/vdb: UUID="ee4713cc-9e75-4a0d-8638-53cb722decd6" TYPE="swap" [ 200s] /dev/loop0: PTUUID="634601de" PTTYPE="dos" [ 200s] /dev/vda: UUID="ce291a42-6f9a-4230-aa5c-113a8496e1fc" BLOCK_SIZE="4096" TYPE="ext4" I expected at least loop0p1/loop0p2 UUIDs would exists in /dev/disk/by-uuid. However, the result of 'find /dev/disk' is like this: [ 200s] /dev/disk/by-path [ 200s] /dev/disk/by-path/ccw-0.0.0002 [ 200s] /dev/disk/by-path/ccw-0.0.0001 [ 200s] /dev/disk/by-id [ 200s] /dev/disk/by-id/virtio-1 [ 200s] /dev/disk/by-id/virtio-0 [ 200s] /dev/disk/by-uuid [ 200s] /dev/disk/by-uuid/ce291a42-6f9a-4230-aa5c-113a8496e1fc There was only one UUID available, and it's for vda. The UUID in /dev/disk/by-uuid is critical for dracut to decide whether the entry should be included in /etc/crypttab of the initrd, and the absence of loop0p2 in /dev/disk/by-uuid led to the invalid crypttab in ZIPL initrd. (*) ibs://home:gary_lin:branches:SUSE:SLFO:Products:SL-Micro:6.1:ToTest/SL-Micro