Hi Guys ,
One day i got a request to install the patches on Server Core machine... and i was shocked to see that request because i have never done this in past, So i started searching in Google and was very scared because most of the post were scripts. As i was working in production environment there was "BIG NO" to execute any script in environment as it was not tested , so after digging further i came across below 5 Methods that executed in environment based on your choice. I selected "OPTION 3" that was SConfig.
Method #1 - Manually Install Updates
In order to install updates you need to configure the
Server Core machine to automatically download and install updates:
At a command prompt:
- To verify the current setting, type:
cscript scregedit.wsf /AU /v
- To enable automatic updates, type:
cscript scregedit.wsf /AU 4
- To disable automatic updates, type:
cscript scregedit.wsf /AU 1
Problem with this setting is that you have no control
over what updates are being downloaded and installed. Therefore, if you do not
wish to enable auto updates, you can manually download each update from the
Windows Update site, transfer them to the Core machine, and then manually
installing them using msiexec.exe or wusa.exe:
Msiexec (command-line options)
Description of the Windows Update
Stand-alone Installer (Wusa.exe) and of .msu files in Windows Vista and in Windows Server 2008
Method #2 - Install from Script
You can also use the following script sample from
MSDN:
Searching, Downloading, and Installing Updates: http://msdn.microsoft.com/en-us/library/aa387102(VS.85).aspx
Set updateSession =
CreateObject("Microsoft.Update.Session")
Set updateSearcher =
updateSession.CreateupdateSearcher()
WScript.Echo "Searching for
updates..." & vbCRLF
Set searchResult = _
updateSearcher.Search("IsInstalled=0
and Type='Software'")
WScript.Echo "List of
applicable items on the machine:"
For I = 0 To
searchResult.Updates.Count-1
Set update =
searchResult.Updates.Item(I)
WScript.Echo I + 1 & ">
" & update.Title
Next
If searchResult.Updates.Count = 0
Then
WScript.Echo "There are no
applicable updates."
WScript.Quit
End If
WScript.Echo vbCRLF &
"Creating collection of updates to download:"
Set updatesToDownload =
CreateObject("Microsoft.Update.UpdateColl")
For I = 0 to
searchResult.Updates.Count-1
Set update =
searchResult.Updates.Item(I)
WScript.Echo I + 1 & ">
adding: " & update.Title
updatesToDownload.Add(update)
Next
WScript.Echo vbCRLF &
"Downloading updates..."
Set downloader =
updateSession.CreateUpdateDownloader()
downloader.Updates =
updatesToDownload
downloader.Download()
WScript.Echo vbCRLF &
"List of downloaded updates:"
For I = 0 To
searchResult.Updates.Count-1
Set update =
searchResult.Updates.Item(I)
If update.IsDownloaded Then
WScript.Echo I + 1 & ">
" & update.Title
End If
Next
Set updatesToInstall =
CreateObject("Microsoft.Update.UpdateColl")
WScript.Echo vbCRLF & _
"Creating collection of
downloaded updates to install:"
For I = 0 To
searchResult.Updates.Count-1
set update =
searchResult.Updates.Item(I)
If update.IsDownloaded = true Then
WScript.Echo I + 1 & ">
adding: " & update.Title
updatesToInstall.Add(update)
End If
Next
WScript.Echo vbCRLF &
"Would you like to install updates now? (Y/N)"
strInput = WScript.StdIn.Readline
WScript.Echo
If (strInput = "N" or
strInput = "n") Then
WScript.Quit
ElseIf (strInput = "Y" or
strInput = "y") Then
WScript.Echo "Installing
updates..."
Set installer =
updateSession.CreateUpdateInstaller()
installer.Updates = updatesToInstall
Set installationResult =
installer.Install()
'Output results of install
WScript.Echo "Installation
Result: " & _
installationResult.ResultCode
WScript.Echo "Reboot Required:
" & _
installationResult.RebootRequired
& vbCRLF
WScript.Echo "Listing of
updates installed " & _
"and individual installation
results:"
For I = 0 to updatesToInstall.Count
- 1
WScript.Echo I + 1 & ">
" & _
updatesToInstall.Item(i).Title &
_
": " &
installationResult.GetUpdateResult(i).ResultCode
Next
End If
Copy the text found in the script, save it as WUA_SearchDownloadInstall.vbs in the system32 folder, and run:
cscript
WUA_SearchDownloadInstall.vbs
Very cool indeed.
Method #3 - Use SCONFIG
As noted on my "Manage Windows Server 2008 R2 Core with SCONFIG" article, SCONFIG is a very nice
tool that is now built into R2, that you can use to manage many aspects of the
Server Core machine. One of these features is the ability to control the
Windows Updates settings, and then use it to download updates and either
selectively install them, or install them all at once.
To run SCONFIG simply enter sconfig.cmd in the command prompt window, and press Enter.
First, enable Automatic Updates by typing
"5" and pressing Enter.
Type "a" and press Enter.
Next, type "6" to get SCONFIG to search and
download missing updates.
You'll be able to install all missing updates, or just
the recommended ones.
Method #4 - Visual Core Configurator
2008
Visual Core Configurator 2008 is a nice GUI-based tool
created by Guillermo Musumeci. The tool is free to use, and can be obtained
here:
After downloading the tool, either copy the files to
the Server Core machine, or if it's a virtual machine, use the ISO file
download instead.
Run the tool.
Press on the "Windows Update" icon.
Press on the "Search for updates" button.
Select the updates you want to download and install,
and press on the "Download
and Install Updates" button.
Method #5 - Install Using Core
Configurator 2.0
On of the first 3rd-party GUI tools for Server Core,
this tool is free to use, and can be obtained here:
Run Start_Coreconfig.wsf to
start the tool.
The latest version of Core Configurator needs .NET
Framework and PowerShell, which it will automatically install once the tool is
executed.
You will be prompted to join the customer Experience
Improvement Program. Accept or decline.
Press the "Control Panel" button.
Press the "Windows Updates" button.
First, you can configure the Auto Updates settings.
Then, press on the "Check for updates" link and press the "Download updates" button.
You can now select which updates to install.
Hope This Will Help!!!
Amarpal Singh Sandhu
No comments:
Post a Comment