Boot ==== BOOTLOG (bool) Enables the system initialization log. BOOTSTATUSPOLICY Can be DisplayAllFailures, IgnoreAllFailures, IgnoreShutdownFailures or IgnoreBootFailures. LASTKNOWNGOOD (bool) Enables boot to last known good configuration. NOCRASHAUTOREBOOT (bool) Disables automatic restart on crash. RESUMEOBJECT (id) Defines the identifier of the resume object that is associated with this operating system object. SAFEBOOT Can be Minimal, Network or DsRepair SAFEBOOTALTERNATESHELL (bool) Uses the alternate shell when booted into Safe mode. STAMPDISKS (bool) Enables stamping of RAW disks during Windows PE. SOS (bool) Displays additional boot information. WINPE (bool) Enables the computer to boot to Windows PE.
The following two scripts will work on the following Operating Systems:
Reboot to Safe Mode - Script to be imported as XML file
<?xml version="1.0" encoding="utf-8"?> <ScriptExport xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="http://www.kaseya.com/vsa/2008/12/Scripting"> <Procedure name="Reboot to Safe Mode" treePres="3"> <Body description="Can only VNC to machine when in safe mode RDP will not work.
Be sure to use the 'Reboot to Normal Mode' script to come out of Safe Mode.
"> <If description="Can only VNC to machine when in safe mode RDP will not work.
Be sure to use the 'Reboot to Normal Mode' script to come out of Safe Mode.
"> <Condition name="True" /> <Then> <Statement description="" name="GetVariable" continueOnFail="false"> <Parameter xsi:type="EnumParameter" name="VariableType" value="AgentTempDirectory" /> <Parameter xsi:type="StringParameter" name="SourceContent" value="" /> <Parameter xsi:type="StringParameter" name="VariableName" value="temp" /> </Statement> <Statement description="" name="GetVariable" continueOnFail="false"> <Parameter xsi:type="EnumParameter" name="VariableType" value="RegistryValue" /> <Parameter xsi:type="StringParameter" name="SourceContent" value="HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\App Paths\AgentMon.Exe\Path" /> <Parameter xsi:type="StringParameter" name="VariableName" value="installpath" /> </Statement> <Statement description="" name="WriteFile" continueOnFail="false" osType="XP"> <Parameter xsi:type="StringParameter" name="Path" value="#temp#\SafeModeBootAdjust.vbs" /> <Parameter xsi:type="StringParameter" name="ManagedFile" value="VSASharedFiles\SafeModeBootAdjust.vbs" /> </Statement> <Statement description="" name="WriteFile" continueOnFail="false" osType="XP"> <Parameter xsi:type="StringParameter" name="Path" value="#temp#\safemode_reboot_kausrtsk.reg" /> <Parameter xsi:type="StringParameter" name="ManagedFile" value="VSASharedFiles\safemode_reboot_kausrtsk.reg" /> </Statement> <Statement description="" name="WriteFile" continueOnFail="false" osType="2003"> <Parameter xsi:type="StringParameter" name="Path" value="#temp#\SafeModeBootAdjust.vbs" /> <Parameter xsi:type="StringParameter" name="ManagedFile" value="VSASharedFiles\SafeModeBootAdjust.vbs" /> </Statement> <Statement description="" name="WriteFile" continueOnFail="false" osType="2003"> <Parameter xsi:type="StringParameter" name="Path" value="#temp#\safemode_reboot_kausrtsk.reg" /> <Parameter xsi:type="StringParameter" name="ManagedFile" value="VSASharedFiles\safemode_reboot_kausrtsk.reg" /> </Statement> <Statement description="" name="WriteFile" continueOnFail="false" osType="2000"> <Parameter xsi:type="StringParameter" name="Path" value="#temp#\safemode_reboot_kausrtskwin2k.reg" /> <Parameter xsi:type="StringParameter" name="ManagedFile" value="VSASharedFiles\safemode_reboot_kausrtskwin2k.reg" /> </Statement> <Statement description="" name="WriteFile" continueOnFail="false" osType="XP"> <Parameter xsi:type="StringParameter" name="Path" value="#temp#\instsrv.exe" /> <Parameter xsi:type="StringParameter" name="ManagedFile" value="VSASharedFiles\instsrv.exe" /> </Statement> <Statement description="" name="WriteFile" continueOnFail="false" osType="2003"> <Parameter xsi:type="StringParameter" name="Path" value="#temp#\instsrv.exe" /> <Parameter xsi:type="StringParameter" name="ManagedFile" value="VSASharedFiles\instsrv.exe" /> </Statement> <Statement description="" name="PauseScript" continueOnFail="false" osType="XP"> <Parameter xsi:type="IntegerParameter" name="Seconds" value="30" /> </Statement> <Statement description="" name="PauseScript" continueOnFail="false" osType="2000"> <Parameter xsi:type="IntegerParameter" name="Seconds" value="30" /> </Statement> <Statement description="" name="PauseScript" continueOnFail="false" osType="2003"> <Parameter xsi:type="IntegerParameter" name="Seconds" value="30" /> </Statement> <Statement description="" name="ExecuteShellCommand" continueOnFail="true" osType="XP"> <Parameter xsi:type="StringParameter" name="Command" value="regedit.exe /s "#temp#\safemode_reboot_kausrtsk.reg"" /> <Parameter xsi:type="EnumParameter" name="ExecuteAccount" value="User" /> <Parameter xsi:type="BooleanParameter" name="Is64Bit" value="False" /> </Statement> <Statement description="" name="ExecuteShellCommand" continueOnFail="true" osType="XP"> <Parameter xsi:type="StringParameter" name="Command" value="regedit.exe /s "#temp#\safemode_reboot_kausrtsk.reg"" /> <Parameter xsi:type="EnumParameter" name="ExecuteAccount" value="User" /> <Parameter xsi:type="BooleanParameter" name="Is64Bit" value="True" /> </Statement> <Statement description="" name="ExecuteShellCommand" continueOnFail="true" osType="2003"> <Parameter xsi:type="StringParameter" name="Command" value="regedit.exe /s "#temp#\safemode_reboot_kausrtsk.reg"" /> <Parameter xsi:type="EnumParameter" name="ExecuteAccount" value="User" /> <Parameter xsi:type="BooleanParameter" name="Is64Bit" value="False" /> </Statement> <Statement description="" name="ExecuteShellCommand" continueOnFail="true" osType="2003"> <Parameter xsi:type="StringParameter" name="Command" value="regedit.exe /s "#temp#\safemode_reboot_kausrtsk.reg"" /> <Parameter xsi:type="EnumParameter" name="ExecuteAccount" value="User" /> <Parameter xsi:type="BooleanParameter" name="Is64Bit" value="True" /> </Statement> <Statement description="" name="ExecuteShellCommand" continueOnFail="true" osType="2000"> <Parameter xsi:type="StringParameter" name="Command" value="regedit.exe /s "#temp#\safemode_reboot_kausrtskwin2k.reg"" /> <Parameter xsi:type="EnumParameter" name="ExecuteAccount" value="User" /> <Parameter xsi:type="BooleanParameter" name="Is64Bit" value="False" /> </Statement> <Statement description="" name="ExecuteShellCommand" continueOnFail="true" osType="2000"> <Parameter xsi:type="StringParameter" name="Command" value="regedit.exe /s "#temp#\safemode_reboot_kausrtskwin2k.reg"" /> <Parameter xsi:type="EnumParameter" name="ExecuteAccount" value="User" /> <Parameter xsi:type="BooleanParameter" name="Is64Bit" value="True" /> </Statement> <Statement description="" name="ExecuteShellCommand" continueOnFail="true" osType="XP"> <Parameter xsi:type="StringParameter" name="Command" value="wscript "#temp#\SafeModeBootAdjust.vbs"" /> <Parameter xsi:type="EnumParameter" name="ExecuteAccount" value="User" /> <Parameter xsi:type="BooleanParameter" name="Is64Bit" value="False" /> </Statement> <Statement description="" name="ExecuteShellCommand" continueOnFail="true" osType="XP"> <Parameter xsi:type="StringParameter" name="Command" value="wscript "#temp#\SafeModeBootAdjust.vbs"" /> <Parameter xsi:type="EnumParameter" name="ExecuteAccount" value="User" /> <Parameter xsi:type="BooleanParameter" name="Is64Bit" value="True" /> </Statement> <Statement description="" name="DeleteFile" continueOnFail="false" osType="XP"> <Parameter xsi:type="StringParameter" name="Path" value="#temp#\safemode_reboot_kausrtsk.reg" /> </Statement> <Statement description="" name="DeleteFile" continueOnFail="false" osType="XP"> <Parameter xsi:type="StringParameter" name="Path" value="#temp#safemode_reboot_kausrtskwin2k.reg" /> </Statement> <Statement description="" name="DeleteFile" continueOnFail="false" osType="XP"> <Parameter xsi:type="StringParameter" name="Path" value="#temp#\SafeModeBootAdjust.vbs" /> </Statement> <Statement description="" name="ExecuteShellCommand" continueOnFail="true" osType="2003"> <Parameter xsi:type="StringParameter" name="Command" value="wscript "#temp#\SafeModeBootAdjust.vbs"" /> <Parameter xsi:type="EnumParameter" name="ExecuteAccount" value="User" /> <Parameter xsi:type="BooleanParameter" name="Is64Bit" value="False" /> </Statement> <Statement description="" name="ExecuteShellCommand" continueOnFail="true" osType="2003"> <Parameter xsi:type="StringParameter" name="Command" value="wscript "#temp#\SafeModeBootAdjust.vbs"" /> <Parameter xsi:type="EnumParameter" name="ExecuteAccount" value="User" /> <Parameter xsi:type="BooleanParameter" name="Is64Bit" value="True" /> </Statement> <Statement description="" name="DeleteFile" continueOnFail="false" osType="2003"> <Parameter xsi:type="StringParameter" name="Path" value="#temp#\safemode_reboot_kausrtsk.reg" /> </Statement> <Statement description="" name="DeleteFile" continueOnFail="false" osType="2003"> <Parameter xsi:type="StringParameter" name="Path" value="#temp#safemode_reboot_kausrtskwin2k.reg" /> </Statement> <Statement description="" name="DeleteFile" continueOnFail="false" osType="2003"> <Parameter xsi:type="StringParameter" name="Path" value="#temp#\SafeModeBootAdjust.vbs" /> </Statement> <Statement description="" name="SetRegistryValue" continueOnFail="false" osType="2008"> <Parameter xsi:type="StringParameter" name="RegistryPath" value="HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SafeBoot\Network\KaseyaAgent\" /> <Parameter xsi:type="StringParameter" name="Value" value="Service" /> <Parameter xsi:type="EnumParameter" name="DataType" value="String" /> </Statement> <Statement description="" name="SetRegistryValue" continueOnFail="false" osType="Vista"> <Parameter xsi:type="StringParameter" name="RegistryPath" value="HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SafeBoot\Network\KaseyaAgent\" /> <Parameter xsi:type="StringParameter" name="Value" value="Service" /> <Parameter xsi:type="EnumParameter" name="DataType" value="String" /> </Statement> <Statement description="" name="SetRegistryValue" continueOnFail="false" osType="7"> <Parameter xsi:type="StringParameter" name="RegistryPath" value="HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SafeBoot\Network\KaseyaAgent\" /> <Parameter xsi:type="StringParameter" name="Value" value="Service" /> <Parameter xsi:type="EnumParameter" name="DataType" value="String" /> </Statement> <Statement description="" name="SetRegistryValue" continueOnFail="false" osType="Vista"> <Parameter xsi:type="StringParameter" name="RegistryPath" value="HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SafeBoot\Network\WinVNC4\" /> <Parameter xsi:type="StringParameter" name="Value" value="Service" /> <Parameter xsi:type="EnumParameter" name="DataType" value="String" /> </Statement> <Statement description="" name="SetRegistryValue" continueOnFail="false" osType="7"> <Parameter xsi:type="StringParameter" name="RegistryPath" value="HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SafeBoot\Network\WinVNC4\" /> <Parameter xsi:type="StringParameter" name="Value" value="Service" /> <Parameter xsi:type="EnumParameter" name="DataType" value="String" /> </Statement> <Statement description="" name="SetRegistryValue" continueOnFail="false" osType="2008"> <Parameter xsi:type="StringParameter" name="RegistryPath" value="HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SafeBoot\Network\WinVNC4\" /> <Parameter xsi:type="StringParameter" name="Value" value="Service" /> <Parameter xsi:type="EnumParameter" name="DataType" value="String" /> </Statement> <Statement description="" name="ExecuteShellCommand" continueOnFail="true" osType="Vista"> <Parameter xsi:type="StringParameter" name="Command" value="bcdedit /set {current} safeboot network" /> <Parameter xsi:type="EnumParameter" name="ExecuteAccount" value="User" /> <Parameter xsi:type="BooleanParameter" name="Is64Bit" value="False" /> </Statement> <Statement description="" name="ExecuteShellCommand" continueOnFail="true" osType="Vista"> <Parameter xsi:type="StringParameter" name="Command" value="bcdedit /set {current} safeboot network" /> <Parameter xsi:type="EnumParameter" name="ExecuteAccount" value="User" /> <Parameter xsi:type="BooleanParameter" name="Is64Bit" value="True" /> </Statement> <Statement description="" name="ExecuteShellCommand" continueOnFail="true" osType="2008"> <Parameter xsi:type="StringParameter" name="Command" value="bcdedit /set {current} safeboot network" /> <Parameter xsi:type="EnumParameter" name="ExecuteAccount" value="User" /> <Parameter xsi:type="BooleanParameter" name="Is64Bit" value="False" /> </Statement> <Statement description="" name="ExecuteShellCommand" continueOnFail="true" osType="2008"> <Parameter xsi:type="StringParameter" name="Command" value="bcdedit /set {current} safeboot network" /> <Parameter xsi:type="EnumParameter" name="ExecuteAccount" value="User" /> <Parameter xsi:type="BooleanParameter" name="Is64Bit" value="True" /> </Statement> <Statement description="" name="ExecuteShellCommand" continueOnFail="true" osType="7"> <Parameter xsi:type="StringParameter" name="Command" value="bcdedit /set {current} safeboot network" /> <Parameter xsi:type="EnumParameter" name="ExecuteAccount" value="User" /> <Parameter xsi:type="BooleanParameter" name="Is64Bit" value="False" /> </Statement> <Statement description="" name="ExecuteShellCommand" continueOnFail="true" osType="7"> <Parameter xsi:type="StringParameter" name="Command" value="bcdedit /set {current} safeboot network" /> <Parameter xsi:type="EnumParameter" name="ExecuteAccount" value="User" /> <Parameter xsi:type="BooleanParameter" name="Is64Bit" value="True" /> </Statement> <Statement description="" name="Reboot" continueOnFail="false" /> </Then> </If> </Body> </Procedure> </ScriptExport>
I've uploaded a zip containing all the files:
community.kaseya.com/.../download.aspx
Mark there is no boot.ini in Windows 7, so that vbs script will not work. Thanks for the effort