tl;dr – The Quick Fix
Make sure you have initscripts
installed on your image. To do this, simply run dnf install initscripts -y
And then your install will work perfectly fine!
This ensures /etc/init.d
and the things that monitor it actually are created. The SCVMM Guest Agent installer was written a very long time ago and still leverages init.d
instead of the newer systemd
.
WTF is happening?!
Simply put… the install
script you use to install the SCVMM Guest Agent on Linux is ancient and makes a ton of very old assumptions. If you crack it open in a text editor, you’ll see it’s attempting to dump some files to /etc/init.d
:
That fails in a very non-descript manner…
And only once you go digging through their script and then exploring your Linux VM’s file system, you’ll discover that hey, /etc/init.d
doesn’t exist because IT’S 2024 NO KIDDING IT DOESN’T EXIST:
https://forums.rockylinux.org/t/installer-unable-to-access-etc-init-d/12662
https://forums.rockylinux.org/t/support-for-init-d-startup-scripts/11163/5
Long Term
Hopefully Microsoft updates their SCVMM documentation to explain this requirement… or change the install script itself to leverage systemd
instead. Only time will tell!