To avoid issue with Offline scripts we recommend taking the following considerations, specially if upgrading to the latest version of the SMA:
- Avoid using the option "Also Run after login (before desktop loads)" if the script is intended for making the device reboot as it will cause the script to run on schedule as well on user login action. Because of how this feature works, it is not recommended to set a reboot action and the mentioned schedule option. The reboot will happen regardless of the defect.
- Because of the issue described with some of the schedule types, we recommend before upgrading the SMA to revise all offline scripts.
- Following actions can be taken:
- Convert the script to Online Kscript.
- As previously mentioned this issue is triggered by different schedule types combinations for which we recommend to avoid using Offline scripts for reboot until this situation is fixed.
How to stop a Device that has fallen into a reboot loop
In order to stop the loop on the device there are some actions to be taken in both sides SMA and the affected Device:
- Identify the script ID: The Kbot ID can be seeing in the url of the script detail page on the adminui
- Temporarily disable it
- Verify the schedule type and options as described previously
- Place the checkmark on Disable Wait for Bootup Tasks and Disable Wait for Login Tasks:
- Single ORG Appliance: Settings › Provisioning › Communication Settings
- Multi Org appliance: System UI | Organizations › Organizations (needs to be done for each affected ORG) › Organization Detail
Once the script ID has been identified, the xml file needs to be removed from kbot_cache directory (C:\ProgramData\Quest\KACE\kbots_cache) so that way the device no longer has the offline script instruction. Normally by disabling the script and/or modify the task's the xml file it should be removed or a new version downloaded at the moment of running next scripting update.
However if the device is stuck in a reboot loop this can be a little bit difficult, for which a manual action might be needed to take on each affected device individually.
One way to achieve this would be booting into advanced options and use the command prompt
Note that accessing to advanced options may vary from device manufacturer and OS versions
Below are some examples:
For any questions or assistance required feel free to contact our Support Team.