I have in fact never had or seen this problem, and I’m quite bewildered by so many people having it. Do your normal windows updates do it? Or transition between major Windows versions? Or is it just a Win 11 problem?
I’ve pretty much always used a dual boot Win/Linux laptop, since around Vista, and I’m on 10 now (but only use it for a few games; all important things in Linux).
I’m not sure how it is now, but when I was still dual booting I had the same problem until I got a separate drive for Linux instead of just using different partitions of the same drive.
Usually people have issues with this when they don’t create the partition free space for the linux partition inside windows first
Do your normal windows updates do it?
They can. As Windows does updates it typically checks to make sure everything is working. This includes making sure it will boot after an update.
Or transition between major Windows versions?
If it’s not a feature enablement update, then yes it can happen. In place upgrades actually reinstall Windows. This includes boot.
Or is it just a Win 11 problem?
Happens with 8, 10 and 11. Since these are UEFI compatible.
The problem starts with how you install. If you do Windows first and then Linux when sharing an EFI partition, Windows doesn’t like this. A feature of Windows is PCR7. Since Secure Boot is a requirement now for Windows 11, this is more of a problem than it was. PCR7 binding happens when the entire boot chain has been authenticated using Microsoft’s CA. This can interfere with BitLocker automatic encryption for Home. If it’s already been enabled before you install Linux, you could lock yourself out of the Windows install if you don’t know where to retrieve your recovery key. People typically install Windows first and then Linux because majority of Linux installers are smart. They detect Windows and create an entry so as to preserve booting.
When an update or upgrade takes place and Windows does its checks, it may decide “I don’t like this EFI configuration” and then completely “repair” it. Not realising that it was that way on purpose.
The solution I’ve found is to manually create boot files for each, and then use rEFInd. Writing a manual configuration that simply loads the bootloaders on the Linux and Windows partition. That way neither are aware of the other.
Windows update went way further than deleting Grub on my laptop. It completely wiped my Linux partition, and I’m not alone in having Microsoft blow up my system: