Skip to contentSkip to conversation

Question: GPT GUID for dm-integrity separate metadata partition

DISCUSSION Max Gautier 2 participants 2 messages May 31 – Jun 1 Util-Linux package

lore
Share & tools
lore
#0 lore raw

Hello,

Some context:
When using dm-integrity in Linux (device mapper target to provides transparent data integrity protection), one has a the option to use a separate device to store the integrity protection, (which can supposedly help offset the performance penalty on dm-integry by using a nvme for HDDs).

While setting up my system (new RAID array on top of dm-integrity on each RAID member), I asked myself what GPT type those separate integrity partition should have, to avoid being confused as something else by other tooling.
(for example systemd auto-mount some partition type, so I suppose some other tooling could have similar behavior)

I considered 'Linux filesystem' and 'Linux reserved', but the first is not accurate and I could not find info on the second, so I do not know if it's reserved for future use (would seem odd seems GUID are plentiful) or for setup where we just don't want tooling to touch it ?

I don't think Linux RAID is accurate either, (that would be the partition on the data disks instead).

What's the recommendation when creating a partition not fitting any of the existing documented GUID ?

Thanks.

(In case this makes matter clearer, here is my intended setup):

# lsblk
NAME        MAJ:MIN RM  SIZE RO TYPE  MOUNTPOINTS
NAME        MAJ:MIN RM  SIZE RO TYPE  MOUNTPOINTS
# Those are the raid disk with the data
sda           8:0    0 14.6T  0 disk  
└─sda1        8:1    0 14.6T  0 part  
sdb           8:16   0 14.6T  0 disk  
└─sdb1        8:17   0 14.6T  0 part  
sdc           8:32   0 14.6T  0 disk  
└─sdc1        8:33   0 14.6T  0 part  
nvme0n1     259:0    0  1.8T  0 disk  
├─nvme0n1p1 259:1    0    4G  0 part  
├─nvme0n1p2 259:2    0  150G  0 part  
│ └─root    253:0    0  150G  0 crypt /
│ # Those are the separate integrity partition (not sure exactly how
│   much space I need for now)
├─nvme0n1p3 259:3    0  ???G  0 part  
├─nvme0n1p4 259:4    0  ???G  0 part  
└─nvme0n1p5 259:5    0  ???G  0 part  
Signature · 1 line
Max Gautier
maintainer
#1 lore raw
Quoted 6 lines · Max Gautier

While setting up my system (new RAID array on top of dm-integrity on each RAID member), I asked myself what GPT type those separate integrity partition should have, to avoid being confused as something else by other tooling.
(for example systemd auto-mount some partition type, so I suppose some other tooling could have similar behavior)

For decades, partition type GUIDs have been mostly cosmetic on Linux. The kernel doesn't use them to decide anything - it probes filesystem/device content directly. The partition type is just metadata, "nice to have" for documentation purposes.

The one notable exception is systemd's Discoverable Partitions Specification, which defines specific GUIDs for root, /usr, /home, swap, etc. Tools like systemd-gpt-auto-generator use these to auto-discover and auto-mount partitions.

For your case, "Linux reserved" (8DA63339-0007-60C0-C436-083AC8230908) seems like a reasonable choice. It's recognized by partitioning tools (fdisk, gdisk) but is not part of the Discoverable Partitions Specification, so systemd won't try to auto-discover or auto-mount it.

Karel

Signature · 2 lines
 Karel Zak  <[email protected]>
 http://karelzak.blogspot.com