Atualização do Windows no Server Core 2012

6

Estou procurando há algum tempo e ainda não encontrei a resposta para minha pergunta sobre como o Windows Update funciona com o Server Core 2012. Tenho alguns controladores de domínio que acabei de colocar on-line e decidi alterá-los para o núcleo do servidor . As duas coisas que encontrei é usar sconfig , mas recebo a seguinte mensagem de erro quando

♀Microsoft (R) Windows Script Host Version 5.8
Copyright (C) Microsoft Corporation. All rights reserved.

Inspecting system...


===============================================================================
                         Server Configuration
===============================================================================

1) Domain/Workgroup:                    Domain:  mydomain
2) Computer Name:                       mydc
3) Add Local Administrator
4) Configure Remote Management          Enabled

5) Windows Update Settings:             Automatic
6) Download and Install Updates
7) Remote Desktop:                      Disabled

8) Network Settings
9) Date and Time
10) Help improve the product with CEIP  Not participating
11) Windows Activation

12) Log Off User
13) Restart Server
C:\Windows\System32\en-US\sconfig.vbs(326, 1) Microsoft VBScript runtime error: Input past end of file
14) Shut Down Server
15) Exit to Command Line

Enter number to select an option:

Eu também encontrei alguns links que dizem para usar Cscript, mas eu também recebo um erro quando eu corro isso. Por exemplo:

[mydc]: PS C:\Users\JohnDoe\Documents> Cscript scregedit.wsf /AU /v
Microsoft (R) Windows Script Host Version 5.8
Copyright (C) Microsoft Corporation. All rights reserved.

Input Error: Can not find script file "C:\Users\JohnDoe\Documents\scregedit.wsf".

Então, como posso garantir que as atualizações automáticas estão funcionando? Qualquer maneira de atualizar manualmente?

    
por coding4fun 04.05.2013 / 07:15

4 respostas

4

Eu não sei porque o sconfig tem esse erro no seu servidor.

scregedit.wsf está localizado em system32:

cd c:\windows\system32
Cscript scregedit.wsf /AU /v 4

ativaria as atualizações automáticas.

Você também pode alterar o registro diretamente, a chave está em: HKLM \ SOFTWARE \ Microsoft \ Windows \ Atualização da CurrentVersion \ WindowsUpdate \ Auto

Existe um valor DWORD chamado 'AUOptions'

Um valor de 1 desativa as atualizações, um valor de 4 downloads e instala-os automaticamente. Os valores 2 e 3 notificam o usuário por meio da área de notificação da Barra de Tarefas, que não existe no Core, portanto, não os use.

Eu instalo as atualizações manualmente porque preciso decidir quando as reinicializações acontecem.

Existem várias ferramentas de terceiros, como o Core Configurator , que permitem que você faça atualizações manualmente.

No momento, estou usando: ' WUA_SearchDownloadInstall.vbs ', um pequeno script da Microsoft

    
por 09.05.2013 / 13:57
3

Agora há um bom módulo do PowerShell que oferece mais controle sobre as atualizações a serem instaladas:

Módulo do PowerShell do Windows Update

Depois de copiar os arquivos em uma pasta em qualquer caminho especificado em% PSModulePath%, você pode usar:

Get-WUlist

Você pode fazer a tubulação usual do PowerShell:

Get-WUList | format-list -property Title, Description

Para obter uma lista de todas as atualizações disponíveis. Você pode então instalar atualizações únicas:

Get-WUInstall -KBArticleID KB2868623

ou sem prompts:

Get-WUInstall -KBArticleID KB2849470 -AcceptAll -IgnoreReboot

Você só pode instalar certas atualizações para o Windows:

Get-WUInstall -Category "Security Updates" -ListOnly

Mostrar o histórico de atualizações:

Get-WUHistory | fl

Verifique se você precisa de uma reinicialização:

Get-WURebootStatus

Parece que isso também funciona em máquinas remotas, mas ainda não testei isso.

    
por 17.08.2013 / 12:06
2

Eu sei que este é um post antigo, mas pensei em postar uma resposta aqui de qualquer maneira. O motivo do erro de entrada é porque o CScript, o nome do script e as opções precisam ser separados. Depois de lutar com isso por algum tempo, é isso que eu encontrei para trabalhar enquanto isso é executado dentro de um script. Invoke-Command -Scriptblock { & 'CScript' 'C:\windows\system32\SCRegedit.wsf' "/AU" "/v"

    
por 08.01.2015 / 18:42
1

Você não declarou em que contexto está executando o sconfig.cmd, mas isso acontece quando você executa essa ferramenta em uma sessão remota do PowerShell. Eu só tive sucesso em executá-lo quando conectado por RDP.

    
por 19.04.2014 / 06:34