for 1 April 2026: “Networking for System Administrators, The Defenestrated Edition”

Defenestrated? Yep. I threw out the Windows.

Well, blacked them out.

It’s another silly April Fools’ book except, as usual, it’s completely serious. Can’t stand Windows? Don’t want to learn a thing about it? Don’t want it tainting your pristine open source eyeballs? This is for you.

Plain black boxes are boring, so I’ve added a bit of commentary as needed.

This is available only for the next ten days. It will never be in retail channels. If you’re interested, grab it now.

February’s Febrile Sausage

This See the Sausage Being Made post goes to Patronizers in February and becomes public in March. Not a Patronizer? You could be! $12 a year gets you my latest updates, occasional free tidbits, and the completely pointless MWL Footnote Fortune File, freshly updated for the new edition of Networking for System Administrators.

Yes, I just published a StSbM post last week, but I need to get back on track and I have news.

Most importantly, I’m making some words. The writing in the original ZFS books isn’t bad, but it could be better, so generally applicable ZFS discussion is getting redrafted. The FreeNAS miniXL makes a fine test server, and I’m even discovering FreeBSD bugs through bhyve. (The docs say you can install FreeBSD 15 with 256 MBRAM, but for a ZFS install you need at least 350MB to install from packages on ISO. I’d call this a doc bug rather than an OS bug, because if you’re running ZFS on a host with less than 350MB RAM you’re daft, but reducing pkg(8) memory usage is worthwhile.) I’m fixing some of the inconsistencies and standardizing language for certain concepts and tools, which I really should have done the first time around but nobody noticed so I guess we got away with it and that’s all that matters.

The challenge for this book? Linux. ZFS considers Linux a Tier 1 platform, but Linux does not consider ZFS a Tier 1 filesystem. ZFS works. You can install it. But there’s no standard way to use ZFS as a root filesystem on Linux. Many people maintain constantly evolving hacks to support ZFS on root. Some variants added support to the installer only to remove it. Proxmox uses ZFS as its primary filesystem, but very few people run Proxmox on their laptop. I think the majority of the book must assume that Linux users have their root on extFS and data disks with ZFS. It seems that ZFSBootMenu is the current leading Linux ZFS boot manager, so I’ll probably do a final chapter discussing that. Such chapters are the shortest-lived part of any book. Putting it at the end makes it easy to ignore when it becomes obsolete.

Which brings me to the big reason for posting this now: Eddie Sharam sent me the cover art. Behold, an ancient Mediterranean vase.

This is an actual painting, available for sale once the book is released, probably as part of the Kickstarter. I pay Eddie reasonably for his work, but making a living as a visual artist is even more fraught than making a living as a writer. If he can get a few bucks more, I’m all for it. Central front and back images mean that we’ll have to do some digital manipulation to make the spine work on the hardcover, but Eddie’s down with that. (No, I don’t digitally alter images. That would require visual skills I have no desire to develop.)

Last month’s cleaning efforts highlighted a problem that’s a decade in the making: my surplus copies warehouse.

The printer screwed up on the N4SA2e special editions, shipping me 32 regular hardcovers with the special dust jackets. I couldn’t use those for Patronizers, sponsors, or Kickstarters. They did, however, overwhelm my ability to ignore these shelves and force me to face reality. I need to do something with these.

The good news is, crowdfunding forced me to solve the problems of shipping.

I’m going to add them to the TWP bookstore, signed, at list price.

Parts of it will be clunky, because WooCommerce shipping is arcane and inflexible. I hired expert help to solve this problem. They failed, so I’m not investing more effort therein. All shipping will happen on Mondays, unless I fry my brain and can only perform a mechanical task. But between good shipping envelopes, a label printer, and my newfound skill in tape gun reloading, it’s manageable.

I have a handful of tech books, a whole bunch of Prohibition Orcs, and a scattering of novels. The troublesome one will be the chapbooks. I might do a “random chapbook, $5” add-on item. Short story roulette, anyone?

Patronizers, you get dibs. If there’s something you want, drop me a note.

Somewhere in here, I have to set up the 1 April Kickstarter. Yes, I’m doing another one. I promise it’ll be stupid. You might laugh. A handful of you will leap at it, probably as a gag gift. But it’ll amuse me as I’m scrabbling through the ZFS book.

I’m also looking at the production tools for the tech book after OpenZFS. The first edition of SSH Mastery was originally laid out in LaTeX. The PDF looked great. I sent it to the print-on-demand networks. Some indie printer, somewhere in the world, choked on its lack of Adobe-specific and Microsoft-specific gunk. The book was pulled from distribution globally because one location had trouble. I had to hire someone to redesign it in Adobe InDesign, and quickly. Afterwards, I had to dive into the InDesign gutter myself.

That was sixteen years ago.

Are those printers still running in Farawayistan? Perhaps.

But other people are reporting good results replacing both Adobe and Microsoft Office with LibreOffice in producing complicated books. I’m seriously considering trying it for the next tech book. This has risks. If one printer in Farawayistan can’t print the book, distributors will yank the book from distribution globally. I’ll have to redo the book in InDesign, and perhaps even in Office. Sponsors and Kickstarter backers have changed buying patterns, though. I need to produce books for signing in the US, and books for dropship in the US, UK, and Australia. My printer (today) is Ingram. Ingram maintains its printers in those locations quite well. I expect to print those easily.

Worst case: I release book for wide distribution, some printer can’t handle it. I redo it in LibreOffice/InDesign. If that fails, I convert everything to Office and InDesign and start over. My hardcore readers will get the book on time. The rest of the world waits an extra month for print.

The worrisome thing is opening old InDesign files, but I have a license for the Affinity suite. Not the new subscription model, not the newer freeware trap, an actual “you bought this software and can use it forever” license.

Truly, I’d love to be rid of Adobe. And Microsoft. And Adobe. Adobe.

I better sign off before I choke on my own rage. Thank you all for your support, it means the world to me–especially in these times.

116: A Made Up Excuse

I’m hurriedly throwing together a talk for NYCBUG on 1 April, and so had to disinter the best sentence I have ever written.

All of those books, and my best work isn’t in any of them. For April Fools’ Day 2003, Dan Langille and I wrote an article about how the United Nations were forcibly merging FreeBSD and NetBSD to form FretBSD. The world was different 23 years ago. The US had just attacked Iraq on a made-up excuse and we felt our tiny part of the world needed a laugh.
Why did we not include OpenBSD? We did.

Theo de Raadt could not be reached for comment. While Theo’s home has been surrounded, UN peacekeeper troops have yet to storm the building. UN spokesmen insist that the siege is going according to plan, however, and Theo is expected to be available for integration in the new combined BSD at some date in late 2023. Of the two hundred eighty-nine casualties suffered by the UN troops at this time, the commanding officer insists that they were caused by a rampaging Canadian moose. Daniel Hartmeier, previously of the OpenBSD Project, insists that OpenBSD has no weapons of moose destruction.

My career is obviously downhill from here, but NYCBUG is streaming “What’s Changed Since The Last Time I Came this Way – a talk that was supposed to be about OpenZFS” and will archive it for later.

Talking at NYCBUG 1 April 2026

A few days ago, Patrick McEvoy said that NYCBUG had no topic for their 1 April meeting and asked if he could persuade me to present something, anything. Anything at all.

Anything? ANYTHING? On April Fools’ Day? The day I’m launching my next Kickstarter? The fact that I had absolutely nothing of worth did not dissuade me–indeed, it never has.

I’ll be presenting “What’s Changed Since The Last Time I Came this Way – a talk that was supposed to be about OpenZFS.”

Michael W Lucas and Allan Jude are busy working on a new OpenZFS book, which means not only documenting everything that’s changed in the last 12 years but discovering everything that they got wrong the first time. The quest for accuracy has taken Lucas deep into mailing list archives, Usenet, VAX installation manuals, the Kremlin’s first Internet connection, the United Nations’ effort to merge the BSD projects, and the ULTRIX and S51K filesystems, and left MWL more convinced than ever that filesystems are nothing but a April Fools’ prank. This hurriedly conceived and hastily assembled talk will update you on new OpenZFS features, but will also try to determine if it’s a good prank–or not.

Michael W Lucas’ name may ring a bell for some in the BSD community. He’s written several shelves of books. But for anyone who has seen him speak in public during Ante COVID days, it was clear they are mere transcriptions of his rambling presentations. For this NYC*BUG meeting, he is unlikely to edit out any of his expected corny jokes we endure during his conference presentations.

More likely, you know his name from his grotesque horror fiction. In the same way his technical books are just transcriptions of his presentations, his fictionaal horror is just a simple reflection of someone who lives in a haunted house filled with (pet) rats in Detroit.

18:45 EDT or 22:45 UTC. The talk will be streamed, so you can catch it from anywhere. Instructions are on the NYCBUG web site.

115: Both Sides of a Mirror Have Errors

I’m working on OpenZFS Mastery’s discussion of self-healing with a completely plugged ear, so I have no idea how this sounds.

OpenZFS uses hashes almost everywhere. A hash is an algorithm that takes a chunk of data and computes a fixed-length string from it. The interesting thing about a hash is that minor changes in the original data dramatically change the data’s hash. Each block of storage includes the hash of its parent block, while each parent block includes the hash of all its immediate children. Whenever the system accesses data, it verifies the data’s correctness using these hashes. Upon discovering an error, OpenZFS corrects or self-heals them. If the underlying VDEVs have redundancy, ZFS either reconstructs the damaged block from RAID-Z or grabs the intact copy from the mirror. If both sides of a mirror have errors, ZFS can recover the files so long as the same blocks are not bad on both disks. If the VDEV has no redundancy, but a dataset has extra copies of the data (see Chapter 4), ZFS uses those extra copies instead.

OpenZFS Mastery is still open for sponsoring.

FreeBSD security report on successful logins

By default, FreeBSD sends a daily security report listing all sorts of good stuff, and failed logins.

I don’t care about poorly-programmed password gropers fumbling at a service that doesn’t accept passwords. I don’t want to read pages of stupidity. Over the years I’ve trained myself to skip the stupidity, which is bad practice. If I get automated email it better contain only things I care about.

I care about successful logins. The number of folks who log onto my hosts is minuscule. I want to skim a short list of logins, recognize them all, and move on with my day.

I’ve trivially modified the failedlogin script to recognize successful logins. No, I’m not going to put this on github. I quit using github several years ago.1 Drop it into /usr/local/etc/periodic/security and enable it in /etc/periodic.conf.local.

security_status_loginfail_enable=NO
security_status_loginsuccess_enable=YES

This only catches SSH logins, though. If anyone has suggestions for improving the regex catching assorted logins for the services you use, I’m open to it.

Will I submit it as a PR? Uh, maybe? Depends if anyone cares.

Original N4SA2e cover art for sale!

The original cover painting for Networking for System Administrators, 2nd edition is on sale at my bookstore.

Minimum price is $600, but I’m sure Eddie would appreciate a couple extra bucks if you’ve got them.

I make nothing on this. Your entire payment (minus processing fees) goes to Eddie and he ships you the painting.

There’s only one, so grab it quick if you’re interested.. As an aside, this is the first time I’ve enabled stock management on my store. Supposedly this will disappear immediately when someone buys it, but I’ll be watching on the off chance it doesn’t.

114: 98% Free from Arthropod Infestation

My new FreeBSD Journal column just went to the editor.

Oh AWOL, my succulent summer child,

You’re the latest model of Human(tm), a digital native, theoretically enlightened by access to the collected wisdom of our species. Are your sources of wholesome, cogent, and actionable advice so limited that reaching out to a grizzled sysadmin seemed wise? True, this is an advice column. I offer advice. I also offer trepanning and experimental epidemiology but you don’t see people queuing for either of those do you? The Internet has Captain Awkward and Doctor Nerdlove and Dear Prudence and Ask A Manager and Dear Abby and you decided that no, you want to live abhorrently so you’re beseeching a grant of “wisdom” from a system administrator known for enhancing rat operated vehicles with nitrous oxide boosters. If you’re from a civilized country you even have health care so you could access counseling, or perhaps I should say intensive counseling because a few minutes into your first session the therapist would hit the big red button and you’d have a comfortable new home with three hot meals a day, your own bed guaranteed 98% free from arthropod infestation, and a meticulously personalized medication regimen because, after all, you think that sysadmins dispense sensible advice for a better life.

For more of my ill-advised advice, grab a copy of Dear Abyss.

Fundraising Auction Over

The fundraising auction is over.

Seth Hanford won with a bid of $777. I wouldn’t normally declare 777 to be a suitable solution to any problem, but I am compelled to sign off on this one.

Seth, send me your receipt and you will get your pig in a poke–uh, your prize. I don’t care which of the suggested charities you donate to, they’re all worthy.

By the way, spectators and other bidders: the anonymous person who bid $550 also donated their bid to charity. If you felt like doing the same, they’d appreciate it.

113: Destroying Performance

Talking pools in OpenZFS Mastery, which means yet again talking about blocks and sectors and alignment.

GPT partitions fill a number of sectors. If you partition a drive assuming 512-byte sectors, you can easily create a partition that would not cleanly start and end on 4K sector boundaries. Take a drive that has 4K sectors, but claims to have 512-byte sectors. Create a partition that fills, say, seven 512-byte sectors, then add another partition that fills the rest of the drive. Make a ZFS pool with 4K blocks on that large partition. Each filesystem block touches two physical sectors. The misalignment causes write amplification, destroying performance. For average spinning drives, assuming that all your disks use 4K physical sectors is safest. Certain SSDs also expect partitions to be aligned along 128 KB or 1 MB boundaries. Some enterprise drives use 8K sectors, however, and a handful of specialty devices even larger.

Avoid alignment problems. Make all GPT partitions begin and end on megabyte boundaries.

My whole stupid career is built on filesystems. You can still get your name in this book, though.