Using the task scheduler and the Windows utility shutdown it’s quite easy to schedule a reboot of a Windows 2003 Server. On a Windows 2003 Server system, shutdown has a number of useful features. It has the ability to provide the shutdown or reboot reason and comment which will be logged into the system events. The following is the usage output of the shutdown command.
Usage: shutdown [/i | /l | /s | /r | /a | /p | /h | /e] [/f] [/m \\computer][/txxx][/d [p:]xx:yy [/c "comment"]]
No args Display help. This is the same as typing /? /? Display help. This is the same as not typing any options /i Display the graphical user interface (GUI). This must be the first option /l Log off. This cannot be used with /m or /d option /s Shutdown the computer /r Shutdown and restart the computer /a Abort a system shutdown. This can only be used during the time-out period /p Turn off the local computer with no time-out or warning. This can only be used with /d option /h Hibernate the local computer. This can only be used with the /f option /e Document the reason for an unexpected shutdown of a computer /m \\computer Specify the target computer /t xxx Set time-out period before shutdown to xxx seconds. The valid range is 0-600, with a default of 30 /c "comment" Comment on the reason for the restart or shutdown. Maximum of 127 characters allowed /f Force running applications to close without forewarning users /d [p:]xx:yy Provide the reason for the restart or shutdown p indicates that the restart or shutdown is planned xx is the major reason number (positive integer less than 256) yy is the minor reason number (positive integer less than 65536)
Reasons on this computer: (E = Expected U = Unexpected P = planned, C = customer defined) Type Major Minor Title
U 0 0 Other (Unplanned) E 0 0 Other (Unplanned) E P 0 0 Other (Planned) U 0 5 Other Failure: System Unresponsive E 1 1 Hardware: Maintenance (Unplanned) E P 1 1 Hardware: Maintenance (Planned) E 1 2 Hardware: Installation (Unplanned) E P 1 2 Hardware: Installation (Planned) P 2 3 Operating System: Upgrade (Planned) E 2 4 Operating System: Reconfiguration (Unplanned) E P 2 4 Operating System: Reconfiguration (Planned) P 2 16 Operating System: Service pack (Planned) 2 17 Operating System: Hot fix (Unplanned) P 2 17 Operating System: Hot fix (Planned) 2 18 Operating System: Security fix (Unplanned) P 2 18 Operating System: Security fix (Planned) E 4 1 Application: Maintenance (Unplanned) E P 4 1 Application: Maintenance (Planned) E P 4 2 Application: Installation (Planned) E 4 5 Application: Unresponsive E 4 6 Application: Unstable U 5 15 System Failure: Stop error E 5 19 Security issue U 5 19 Security issue E P 5 19 Security issue E 5 20 Loss of network connectivity (Unplanned) U 6 11 Power Failure: Cord Unplugged U 6 12 Power Failure: Environment P 7 0 Legacy API shutdown
So the correct command line parameters to reboot a Server for application maintenance would be:
shutdown /r /c "Support scheduled reboot due to maintenance on help desk application." /f /d P:4:1
The /r indicates a shutdown and restart. To just shutdown use /s.
The /c provides a comment to log in the event log.
The /f forces running applications to close.
The /d indicates the reason for the reboot which is logged in the event log. P indicates planned. 4 identifies the reboot as application related. 1 indicates the reboot was performed because of maintenance on the application.
To schedule the reboot a new task needs to created within the Scheduled tasks. The easiest way to do this is to right click within the scheduled task list and select new, Scheduled task from the context menu. Then right the “New Task” and select properties.
In the run field enter:
c:\windows\system 32\shutdown /r /c "Support scheduled reboot due to maintenance on help desk application." /f /d P:4:1
The Start In field should be:
Note: If your system root is different to c:\windows substitute the correct path above. A quick way to find out your system root is from a Command Prompt window, issue the command:
Select an account to run the command as. Make sure your selected account has administrative access to the server.
Next set your schedule as per your specifications, and then your done. Close the task and rename to a more meaningful name. Once again this achieved by right clicking and selecting rename form the context menu.