If I totally bork my OS somehow and want to completely reinstall from scratch, will the separate APFS volume be untouched?
You are talking About the read-only system volume in macOS Catalina changes and no, the data volume will not be totally untouched. If you completely reinstall macOS from scratch it will be overwritten.
The Macintosh HD - Data volume is not really analogous to /home
as it contains caches, logs, /usr/local
and other non-static parts of the OS. The Macintosh HD read only volume contains only things that don't change (by definition). When you do a re-install all of this is overwritten.
Here is what the data volume contains (from The Eclectic Light Company Catalina Boot Volumes page).
So to me, it seems as if I should indeed create a separate partition so that any potential reinstall operations would not touch my personal data
That is a matter of opinion. If you didn't reinstall everything the same you could end up with things in ~/Library
that no-longer matched what was installed. The same as could happen after reinstalling with regard to config files on Linux (after relocating /home
) or %AppData% on Windows (after relocating /Users
).
You may find it more convenient to simply use data volumes outside of /Users
for your data or to restore your data from backup after a reinstall. It depends how big your data are and how often you plan to reinstall I suppose.
If you want to though you can update the location of your users home directory to be on another volume. This location is stored in the directory services database in /var/db/dslocal/nodes/Default/user
and can be updated by either
- System Preferences > Users and groups or
sudo dscl . create /Users/yourUser NFSHomeDirectory /new/path/yourUser
or
- Directory Utility
A new folder hierarchy will then be automatically created at the new location when the user next logs on. See Relocating /Users folder in MacOS 10.15 (Catalina).
Then after a complete re-install it would just be a matter of updating the location again to point to the other volume containing your existing data.