#PartitionTables

2025-06-28

The #Debian "hybrid 9660" format *really* upsets #FreeBSD's geom.

geom decides that the fake EFI partition table is totally invalid and ignores it, then gets upset by Debian's abuse of type 0 for a valid MBR-style partition, then gets upset by overlapping primary partitions.

#ISO9660 #PartitionTables

2025-06-01

The #RaspberryPi hurdle that #OpenBSD fell at was its installer.

Despite it presenting two different partition table editors, I couldn't persuade it to just simply use the already existing single UFS volume that was already there. It just does not seem to cater for the idea that one might want to install to the same removable DASD that one is using, with boot, system, and swap as already defined. It either led me down a path where it zapped the existing partition table, and all of the install files, or demanded that there be another solid-state medium to install to.

Which is sad, because a Pi with just a TF card and a single purpose is still a significant use case.

Whereas in NetBSD's sysinst, choosing to install to the same system is the first option on its third menu, after picking the installer language and choosing to install.

This is a 2 horse race being comfortably won by #NetBSD, currently. I've not tried #FreeBSD yet.

#PartitionTables

2025-06-01

The firmware on a #RaspberryPi 4 does not mind if one changes the partition types of the #FreeBSD and #OpenBSD FAT volumes to EFI system, matching #NetBSD in spirit if not in modern partitioning scheme.

OpenBSD again almost fell at the hurdle here. It is extraordinarily sensitive to the status of its UFS1 partition. Touch it, or attempt to use a fresh one made from scratch, and its booloader thinks that it is talking to an esp device instead of to an sd device, and fails. This is a very strange dependency.

NetBSD, in contrast, did not bat an eyelid when I splatted about 5GiB of home directory, dotfiles, and tooling onto its UFS1 volume, using pax on another machine which had the TF card in a card reader.

NetBSD also auto-fixes the backup copy of the EFI partition table after its device re-sizing step. It didn't bat an eyelid, again, when I adjusted the initial card myself ahead of time using FreeBSD's #gpart recover.

#UEFI #PartitionTables #pax

2025-06-01

This is good, because installing and using #TianoCore #UEFI firmware in place of u-boot seems to be the only way to get the #OpenBSD boot loader to recognize the #RaspberryPi's on-board display and a USB keyboard.

It is otherwise insistent on using the UART, which makes it impossible to press that "any" key to get the boot loader to stop so that one can type the magic incantation to get the kernel proper — in its turn — to use the display and keyboard. It too defaults to using the UART.

This is a Pi 4 in a PiHut "modular" case, still resembling that #Blakes7 prop. It's not designed for DB9 sockets, but it has HDMI and USB holes, plus optional plastic shields for covering them to just let power and Ethernet in when the Pi is in production.

Maintenance with just a keyboard and monitor is the goal. OpenBSD barely cleared this first hurdle of controlling its boot loader.

(It fell at a subsequent hurdle, which is why I'm now trying #NetBSD and #FreeBSD.)

#DASD #PartitionTables

2025-06-01

#FreeBSD's FAT16 partition is 50MiB, and #NetBSD's FAT32 partition is 80MiB. These comfortably take additional files.

FAT32 is technically superior, with the variable-length root directory, but for DASD volumes whose whole purpose is to contain a couple of tens of boot loader files it's not much of a practical advantage here. And indeed on the downside, the FATs are an order of magnitude bigger.

#OpenBSD's FAT16 partition in contrast is a tiny 8MiB. #TianoCore UEFI firmware, approximately 4MiB, does not fit on it without deleting stuff.

Ironically, it is preceded by twice that amount, 16MiB, in free space not allocated to any partition. It's possible to delete the 8MiB Microsoft partition and re-create a 23MiB one, as long as one saves and restores the contents.

#UEFI #DASD #PartitionTables #RaspberryPi

2025-06-01

It's interesting to see who the early adopters in the BSD world are when it comes to various things. Such as the partitioning on their #RaspberryPi installer images.

#OpenBSD has an old "MBR" partition table. No container partitions, just a UFS1 volume in an OpenBSD primary partition and a FAT16 volume in a >1024cyl Microsoft primary partition.

#FreeBSD has an old "MBR" partition table. It too has a FAT16 volume in a >1024cyl Microsoft partition. It has container partitions, though, with an even older BSD disklabel in a FreeBSD primary partition and a UFS2 volume contained inside that.

Waving hello from the 21st century, #NetBSD has an EFI partition table. No container partitions, of course. There is a FAT32 volume in an EFI System partition, and a UFS1 volume in a NetBSD partition.

#UEFI #DASD #PartitionTables

Client Info

Server: https://mastodon.social
Version: 2025.04
Repository: https://github.com/cyevgeniy/lmst