For example, if you upgraded to Catalina from a pre-APFS version of macOS on an SSD, "Macintosh HD" will likely be disk1s5 in the APFS container scheme. In this case, "Macintosh HD - Data" will be disk1s1, "Preboot" will be disk1s2, "Recovery" will be disk1s3 and "VM" will be disk1s4.
Overlayfs will do an efficient (reflink) copy-up on a supporting filesystem, such as XFS or Btrfs. Both layers need to be on the same file system to do the reflink copy. The lower dir can be made read-only by VFS read-only bind mount option; or on Btrfs either a read-only snapshot or setting read-only property on a subvolume. But it sounds like APFS firmlinks institute some limitations, like you probably can't modify files on the read-only layer via copy-up to the read-write upper, rather just add new/unrelated items.
"Faster updates: Once macOS Big Sur is installed, software updates begin in the background and finish faster than before — so it’s easier than ever to keep your Mac up to date and secure."
1. Boot to recovery mode
2. Open Terminal
3. Delete files I was trying to delete with rm
4. Reboot
The part where I may have lucked out was where the unrecovered space from deletions prior to step 1 were significantly more than the space I reclaimed this way. It’s entirely possible I could have just rebooted but I didn’t want to chance it, not knowing the failure modes I’d encounter.
Even though it is supposed to let go of the space upon demand, it is my experience that it does not.
When a big update came out (don’t remember exactly which one, but it was a couple or so months ago), my disk space was down to about 13GB free, even though I had deleted over 150GB of files. The update refused to run, citing lack of space.
I had to wipe the disk, and use Migration Assistant to restore the disk.
That was the second time this has happened.
I think that this particular aspect of APFS still needs a lot of work.
You can check by running: tmutil listlocalsnapshotdates
You can also manually delete the snapshots by using tmutil.
Unrelated to APFS specifically - I also use Dropbox and it takes filling the disk for it to finally purge content I’ve marked as online only with smart sync.
APFS has serious problems and shouldn’t be forced upon people who value their data.
The rsync mostly preserved all the obscure Mac-specific attributes (resource fork, etc), but at least one thing was lost: the "bundle bit" on directories. Thankfully most bundles are marked another way these days, so only a few things broke (in particular some VST plug-ins, but not others). Good luck finding documentation on that bit! As far as I can tell very few people know of its existence.
The kernel panic was an assert(), which is just inexcusable. FS corruption ("impossible" things in the FS driver) should absolutely never cause the OS to panic. If something fails, return an error to userspace, and possibly remount the filesystem read-only.
[1] https://developer.apple.com/support/downloads/Apple-File-Sys...