답변:
Windows 7에 대해서는 잘 모르지만 XP / Vista에서는 다음 명령을 실행하여 업데이트를 감지하고 다운로드 할 수 있습니다.
wuauclt /detectnow /reportnow
작동하는 데 문제가 있으면 WSUS Wiki를 확인하십시오 .
그렇지 않으면 원하는 특정 업데이트가있는 경우 Microsoft 웹 사이트에서 다운로드하십시오. 설치하는 데 방해가되는 문제가있는 경우 Windows Update 로그를 처리하기가 가장 좋은 방법입니다.
스크립트를 사용하여 업데이트를 동 기적으로 확인, 다운로드 및 설치할 수 있습니다. 나는 종종 Windows Core 서버의 수동 패치를 위해이 vbscript 의 수정 된 버전 을 사용합니다.
Set updateSession = CreateObject("Microsoft.Update.Session")
updateSession.ClientApplicationID = "MSDN Sample Script"
Set updateSearcher = updateSession.CreateUpdateSearcher()
WScript.Echo "Searching for updates..." & vbCRLF
Set searchResult = _
updateSearcher.Search("IsInstalled=0 and Type='Software' and IsHidden=0")
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)
addThisUpdate = false
If update.InstallationBehavior.CanRequestUserInput = true Then
WScript.Echo I + 1 & "> skipping: " & update.Title & _
" because it requires user input"
Else
If update.EulaAccepted = false Then
WScript.Echo I + 1 & "> note: " & update.Title & _
" has a license agreement that must be accepted:"
WScript.Echo update.EulaText
WScript.Echo "Do you accept this license agreement? (Y/N)"
strInput = WScript.StdIn.Readline
WScript.Echo
If (strInput = "Y" or strInput = "y") Then
update.AcceptEula()
addThisUpdate = true
Else
WScript.Echo I + 1 & "> skipping: " & update.Title & _
" because the license agreement was declined"
End If
Else
addThisUpdate = true
End If
End If
If addThisUpdate = true Then
WScript.Echo I + 1 & "> adding: " & update.Title
updatesToDownload.Add(update)
End If
Next
If updatesToDownload.Count = 0 Then
WScript.Echo "All applicable updates were skipped."
WScript.Quit
End If
WScript.Echo vbCRLF & "Downloading updates..."
Set downloader = updateSession.CreateUpdateDownloader()
downloader.Updates = updatesToDownload
downloader.Download()
Set updatesToInstall = CreateObject("Microsoft.Update.UpdateColl")
rebootMayBeRequired = false
WScript.Echo vbCRLF & "Successfully downloaded updates:"
For I = 0 To searchResult.Updates.Count-1
set update = searchResult.Updates.Item(I)
If update.IsDownloaded = true Then
WScript.Echo I + 1 & "> " & update.Title
updatesToInstall.Add(update)
If update.InstallationBehavior.RebootBehavior > 0 Then
rebootMayBeRequired = true
End If
End If
Next
If updatesToInstall.Count = 0 Then
WScript.Echo "No updates were successfully downloaded."
WScript.Quit
End If
If rebootMayBeRequired = true Then
WScript.Echo vbCRLF & "These updates may require a reboot."
End If
WScript.Echo vbCRLF & "Would you like to install updates now? (Y/N)"
strInput = WScript.StdIn.Readline
WScript.Echo
If (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
그것은 매력적으로 작동하는 것 같지만 물론 Windows 7에서는 테스트하지 않았습니다. 필요한 경우 특정 업데이트를 대상으로하는 다른 기사에 대한 링크도 있습니다.
비슷한 경험을 제공하는 Powershell 모듈 도 있습니다.
간략히 살펴본 후 업데이트 API를 사용하지만 더 많은 옵션 이있는 타사 응용 프로그램 도 찾았습니다 (타사 코드를 신뢰해야 함).
새로 설치 한 후 especailly Windows 운영 체제를 패치해야하는 경우 Offline Updater를 자세히 살펴보십시오 .
스크립트를 사용하여 제안하는 모든 패치 (Win2000, Win XP, Win 2003, Vista, Win2008, Win2012 32 및 64 비트), 다국어, 서비스 팩, .NET 프레임 워크 및 Office 패치 (XP, 2000)를 다운로드합니다. , 2003, 2007).
모두 다운로드 한 후에는 화요일마다 모든 패치를 업데이트하고 변경 사항 만 적용하면됩니다. 그것은 catalouges를 얻고 매일 더 길어지고 있지만 (현재 OS / Office rev에 따라 많은 megs).
로컬 컴퓨터에 파일이 다운로드되면 CD / DVD 이미지를 작성하는 스크립트가 있습니다 (원하는 경우 OS 당 DVD 이미지가 자동으로 수행됨).
내가하는 일은 쓰기 방지 탭을 따르는 SD 카드 리더에서 4GB SD 메모리 카드를 사용하는 것입니다. 나는 2GB 카드를 사용했지만 Win XP와 거의 대부분의 Office 빌드에 거의 맞지 않아 4GB 카드로 옮겼습니다.
따라서 컴퓨터 문제를 해결할 때 이전에 쓸 수있는이 장치를 신뢰할 수없는 바이러스 감염된 컴퓨터에 삽입하는 것이 좋습니다.
따라서 첫 번째 단계로 최신 패치를 적용 할 수 있습니다.
자동 실행을 사용하거나 장치에서 실행 파일 (키, 외부 HD, CD, DVD)을 실행하면 로컬 컴퓨터에서 Windows Update 서비스를 사용하여 모든 업데이트를 적용하는 스크립트를 시작하지만 대신 다운로드를 위해 전선을 가로 질러 로컬 사본을 사용합니다.
따라서 WinXP 시스템을 최신 SP 및 패치로 업데이트하는 데 여전히 1 시간 이상이 소요될 수 있지만 네트워크 트래픽은 전혀 없으며 이더넷 케이블을 완전히 분리 한 상태에서 수행 할 수 있습니다.
놀랍도록 유용한 도구!
패치 CD를 미리 제작 한 AutoUpdate 사용자가 CD 이미지를 배포 한 것과 같이 Microsoft에 위배되지 않아야합니다. 이 도구는 스크립트를 업데이트하므로 라이센스가있는 Windows 워크 스테이션의 모든 패치를 가져와야합니다.
현재 duffbeer703 의 답변 에 의견을 추가 할 수 없으므로 별도의 답변으로 여기에 있습니다.
인터넷 아카이브에 보관 된 WSUSwiki 링크의 마지막 "좋은"버전은 다음과 같습니다 . 원래 답변에 제공된 옵션은이 FAQ 항목에 설명되어 있습니다.