What is a startup script?
A startup script runs during a system’s initial boot up; it is applied to a system using a group policy. Startup scripts run under the context of the local computer’s SYSTEM account.
Why use a Startup Script for ConfigMgr?
To check configuration settings and the state of services that the ConfigMgr client agent depends on for successful operation as well as install the client agent if it is not install or functioning properly.
Why use a Startup Script instead one of the built-in methods to install the client agent?
A startup script avoids most common DNS issues, firewall issues, and other connectivity issues that are common when a central system attempts to touch all of the clients. It also adds the health/configuration checks mentioned above to check for (and correct some) dependencies as well as report on systems still having issues.
What about the other community scripts available?
This script was inspired by those other scripts, however, in reviewing the other scripts that I had at my disposal, I had a hard time recommending them for use at my customers. This was mainly because I didn’t know exactly what the scripts did. A lot of time and effort were put into the other scripts, but they were not straight-forward and tended to resemble spaghetti; they were also somewhat difficult to configure, decipher, and troubleshoot because of the spaghetti code. Thus, this script was written from scratch with simplicity in mind and to be configurable using a separate configuration file. The checks that it performs are also configurable and can therefore be adapted to most (if not all) environments.
Any and all feedback is welcome.
Download: ConfigMgrStartup.zip