I use a combination of Time Machine, CrashPlan, and Arq to back up my system, you should too. Everything I'm doing has the potential to trash all of the data on your computer, requiring a clean installation of macOS and subsequent data recovery from backups.
WARNING: Do not proceed with any of these steps unless you have the ability to restore a bare-metal backup.
Needless to say, I failed miserably when I opted to have Kali install Grub and it overwrote my primary Boot Manager on the Mac and rendered the system unbootable (and eventually unrecoverable). So, I set about working on a dual-boot scenario. I originally thought I'd just build it into a Virtual Machine (using Parallels), but was concerned that I might not have the control over the hardware that I'd need in order to make Kali effective as a learning environment. I recently decided to run Kali Linux on my MacBook.