Normally if I talk about a filesystem here, I talk about Hammer, which is not a surprise. However, I often read and review Michael W. Lucas’s BSD-oriented books, and he has written FreeBSD Mastery: Storage Essentials. I’m reviewing it here because it’s obviously BSD-related, and some portions are directly relevant for other BSDs.
Disk setup and layout isn’t something that normally consumes much attention past the initial install – until something goes wrong, or until a system needs a new configuration. Installers tend to hide that initial layout, anyway.
Vendors take advantage of this. Much of the specialized storage vendors out there are selling you a computer with disks in it – something you can build yourself. You don’t (or at least I hope you don’t) buy a firewall when you can do the same with pf or ipfw; the same goes for disk management.
There’s plenty of coverage of GEOM, GELI, GDBE, and the other technologies specific to FreeBSD. I for one did not know how GEOM worked, with its consumer/producer model – and I imagine it’s complex to dive into when you’ve got a broken machine next to you. If you are administering FreeBSD systems, especially ones that deal with dedicated storage, you will find this useful. He doesn’t go into ZFS, but he does hint at a book on it later…
If you’re not a FreeBSD user, there’s also material that’s common to any BSD – an explanation of disk architecture, of UFS, RAID, and SMART. Knowing what SMART is and does is essential, in my opinion. You may be able to cobble this material together from other sources online, but it’s packaged nicely here, with Lucas’s easy writing style.
It’s a self-published book, and as such the download nets you three different formats. It’s currently $10 and DRM-free, directly from the author. You can also order physical versions, if you like paper.
Awesome description. GEOM seems quite interesting. Was there ever an interest in bringing it into Dragonfly?
Nobody took a serious look at it, as far as I know. Serious == code changes. It’d be a large project.
What? GEOM is the best thing about FreeBSD, that’s far better than Linux has. At first it was a desaster, when they came up with it (I think around FreeBSD 6 or 7) but since FreeBSD 8 and 9 it is the best system for managing disks EVER!
What I also miss in other BSDs is that they lack ACLs. OpenBSD because of ideological reasons and others just do not implement it (yet). I’d love to see NFSv4 ACLs to HAMMER.
And just one more remark on disk setup, of course GEOM is good stuff, but the question here is, if that’s even relevant any more. I am not doing much lately, on Linux for example I just care about the right aligning of the partitions inside a GPT table (alignment in 1 MiB steps is fine for SSDs too) and then I put everything in one BTRFS (except one /boot and one swap of course) and do divide it up inside of it. To DragonFlyBSD I can imagine that one could do it in a similar way, just aligning the needed partitions and then put everything into one HAMMER and that’s it. On FreeBSD the same may go for ZFS. But ZFS still lacks some functionalities UFS2 has. It does not really lack them as a filesystem, but they are not implemented or supported on FreeBSD.
Looking back as far as 2005, there seems to be no interest in porting GEOM to DF.
http://lists.dragonflybsd.org/pipermail/kernel/2005-February/118421.html
(Start of a longish thread on the subject.)
IIRC DF has something similar / a little more generic, and implements Device Mapper (imported from NetBSDs reimplementation of the Linux driver. This import was done back in 2010.
http://www.dragonflybsd.org/release28/
(Under kernel changes.)