If I had installed FreeBSD with UFS, would I have GPT partitions mounted on /, /usr, /home, etc?
Correct, given you'd like to split them the same way you had s1a, s1d, s1e in MBR slice.
I suggest to go through the
GEOM(4) and
geom(8) to get the idea. Framework is the whole set of classes and tools around it, class can be part (or mirror, raid, multipath, label, ..) and provider can be a physical disk (or memory device, ..).
You have more ways to skin the cat - use fdisk/bsdlabel or use gpart. Or you can actually combine them together (use gpart and bsdlabel).
I'll repeat myself as you
hruodr mentioned I'm maybe not saying it clear enough
-- fdisk is giving you misleading information, it will provide you an output of the partition even if there's none.
While we are talking about the providers -- there's an easy way for you to test this without destroying anything. Example to test the GPT/ufs setup:
Code:
# truncate -s 1024M testdisk
# mdconfig -a -t vnode -f testdisk
md0
# gpart create -s gpt md0
md0 created
# gpart add -t freebsd-boot -s 512k md0
md0p1 added
# gpart add -t freebsd-ufs -s 128M md0
md0p2 added
# gpart add -t freebsd-ufs -s 512M md0
md0p3 added
# gpart bootcode -b /boot/pmbr -p /boot/gptboot -i 1 md0
partcode written to md0p1
bootcode written to md0
#
# gpart show md0
=> 40 2097072 md0 GPT (1.0G)
40 1024 1 freebsd-boot (512K)
1064 262144 2 freebsd-ufs (128M)
263208 1048576 3 freebsd-ufs (512M)
1311784 785328 - free - (383M)
I've created an empty file I attached to a memory device. I created GPT scheme, boot partition (legacy boot) and two partitions. md0p2 and md0p3 would be used for FS (/ and /usr for example).
You can use this to create MBR layout too. gpart is capable of doing it allthough I do remember that back then I used bsdlabel (fdisk was used to install mbr (lba 0) and bsdlabel to install bootstrap code on slice). Luckily I don't need to deal with MBR disks under FreeBSD anymore.