BIOS MBR booting isn't always flawless and can be odd

I recently wrote about one reason I prefer BIOS MBR booting overUEFI , where I praised the predictabilityof BIOS MBR booting. This is true, but just as with everything else,sometimes BIOS makers have been creative and the result of theircreativity is not as useful as you might want. Today's story isabout one such BIOS, found on some of our servers.

The most important job of a BIOS in MBR booting is picking the 'bootdisk'. The traditional way of doing this is that the


Things I ran into when moving from Fvwm2 to Fvwm3

I don't use a standard desktop environment like Gnome, KDE, XFCE,or Cinnamon on my home and work desktops ( I do use Cinnamon onmy work laptop because it was the easy way ). Instead I use a customX11 environment with FVWM as the window manager . Specifically, I used FVWM version 2 ('fvwm2'), until recently when Ihad to switch to fvwm3 , (aka'fvwm 3') because that was the easiest way to work around what was


Our current plague of revolving .top and .click spam email domains

Email spam is somewhat like the weather, and much like the weatherI don't talk about it much any more. However, every so often somethingunusually unpleasant happens (in both of them). Our current irritationin spam weather is what I suspect is one particular spammer thatoperates using a rapidly changing flux of spam domains in .top,.click, and on some days .us, using a distinctive (but not reallymachine matchable) pattern of tagged envelope senders.

The typical pattern of envelope senders


The case for atomic types in programming languages

In My review of the C standard library in practice Chris Wellons says, aspart of the overall discussion:

I’ve used the _Atomic qualifier in examples since it helps withconciseness, but I hardly use it in practice. In part because ithas the inconvenient effect of bleeding into APIs and ABIs. Aswith volatile , C is using the type system to indirectly achieve agoal. Types are not atomic, loads and stores are atomic. [..]

Wellons is entirely correct here; at the CPU


Learning about Linux fwmark masks

The Linux kernel's general IP environment has a system for markingpackets with what is generally called a fwmark , short for 'firewall mark'.Fwmarks can be set through iptables, using the MARK target(documented in iptables-extensions ), orby facilities such as WireGuard , and can then beused by firewall rules or by 'ip rule' policybased routing. Fwmarks are how I solved the general recursiverouting problem when I set up my WireGuard environment . All of my usesof fwmarks have been simply


Things that systemd-resolved is not for (as of systemd 251)

Today, in a burst of enthusiasm, I converted my office and homeFedora desktops to using systemd-resolved ( as foreshadowed ). The result has taught me a lot, andthe general thing I've learned is that systemd-resolved is much more narrowly scoped than I thought it was. It is not ageneral system for handling the potential complexity of nameresolution in a multi-faceted environment; instead, it's focusedon managing a world where network connections come and go, and eachnetwork connection


I'm considering giving in to the systemd-resolved wave

I've traditionally had generally lukewarm views on systemd-resolved for my own desktops and our Ubuntu servers. Our Ubuntu servers directly use our local resolvingDNS servers and I don't use it on my normal desktops , where I have a somewhat complex localresolver that uses Unbound (I do things like have local names and divert resolution for some domains ). But while all of this works today, I feel thatin the future my life may be made easier by switching to systemd-resolved,much like I


The general 'recursive routing' problem in IP networking

There's a general problem in certain sorts of IP network setupsthat I will call the recursive routing problem. The recursiverouting problem comes up when you want to send some inner trafficto an IP address in protected form, by taking the traffic, encryptingit, and then sending it to the same IP address as outer traffic.You need this outer traffic to be treated differently from theinner traffic so it's not recursively re-routed back through theencryption process again, because otherwise your traffic to the


What I want in Prometheus (as a whole) is aggregating alert notifications

I recently looked at Prometheus's new feature to keep alertsfiring for a while (often to avoid flapping alerts) and in the process realized that itwasn't really what I want. The simple way to put it is what I careabout getting less of is not the alerts themselves, but alertnotifications. And for that, what I really want is for notificationsthat can (at some point) aggregate together information aboutmultiple alerts over time. Instead of getting one notification eachtime the alert triggers,


Rsync'ing (only) some of the top level pieces of a directory

Suppose, not hypothetically ,that you have a top level directory which contains some number ofsubdirectories, and you want to selectively create and maintain acopy of only part of this top level directory. However, what youwant to copy over changes over time and you want un-wanted thingsto disappear on the destination (because otherwise they'll stickaround using up space that you need for things you care about).Some of the now-unwanted things will still exist on the source butyou don't