Here is some sample gpart(8) output when run against an a full MBR-sliced disk :
The first column is the partition begining, in 512K blocks/sectors.
The second column is the allocated size of the partition, in the same unit.
The third column (in bold) is simple to interpret: it's the index of the slices.
Now, when I feed gpart(8) the extended MBR slice of that same disk :
What does the third column now hold? It looks like some kind of offset for the beginning of the logical partitions relative to the extended one, but what unit is it using?
I'm curious about this because this value is what replaces the "backward compatibility for partition names in the EBR scheme" mentioned in gpart(8): when using a kernel built without the GEOM_PART_EBR_COMPAT option, device nodes for the logical MBR partitions are named dev/ada1s1+00000001, /dev/ada1s1+00619959, and/dev/ada1s1+01240016 (instead of /dev/ada1s5, /dev/ada1s6, and /dev/ada1s7, which would be their backward compatible names).
Code:
[B][color="green"]freebsd# gpart show ada1[/color][/B]
=> 63 125829057 ada1 MBR (60G)
63 4031 - free - (2M)
4094 117182466 [B]1[/B] !15 (55G)
117186560 1953792 [B]2[/B] ntfs (954M)
119140352 1953792 [B]3[/B] linux-data (954M)
121094144 1951744 [B]4[/B] linux-data (953M)
123045888 2783232 - free - (1.3G)
The second column is the allocated size of the partition, in the same unit.
The third column (in bold) is simple to interpret: it's the index of the slices.
Now, when I feed gpart(8) the extended MBR slice of that same disk :
Code:
[B][color="green"]freebsd# gpart show ada1s1[/color][/B]
=> 0 117182466 ada1s1 EBR (55G)
0 39057410 [B]1[/B] ntfs (18G)
39057410 39063552 [B]619959[/B] linux-data (18G)
78120962 39061504 [B]1240016[/B] linux-data (18G)
What does the third column now hold? It looks like some kind of offset for the beginning of the logical partitions relative to the extended one, but what unit is it using?
I'm curious about this because this value is what replaces the "backward compatibility for partition names in the EBR scheme" mentioned in gpart(8): when using a kernel built without the GEOM_PART_EBR_COMPAT option, device nodes for the logical MBR partitions are named dev/ada1s1+00000001, /dev/ada1s1+00619959, and/dev/ada1s1+01240016 (instead of /dev/ada1s5, /dev/ada1s6, and /dev/ada1s7, which would be their backward compatible names).