none
Установка *.msu пакетов. RRS feed

  • Вопрос

  • Здравствуйте. 

    Развернут SCCM 2012. 

    Создал приложение, присвоил его к коллекции устройств, разворачивается скриптом, указал пути расположения самого пакет. Установочный пакет лежит на сервере SCCM.

    'Returns info if Windows 'KB2506143' in installed' ----------------------------------------------------------'OptionExplicitDim objWMIService, strComputer strComputer = "."'Run the querySet objWMIService = GetObject("winmgmts:{impersonationLevel=impersonate}!\\" &strComputer& "\root\cimv2")   Dim QFEs Dim QFE Set QFEs = objWMIService.ExecQuery ("Select * from win32_QuickFixEngineering where HotFixID like 'KB2506143'") ForEach QFE in QFEs Wscript.echo "Update installed"Next WScript.Quit

    В итоге завершается с ошибкой: Error code - 0xFFFFFFFF(-1), Error Description: Script execution failed with error - 1

    Где смотреть, куда копать?

    Заранее спасибо.

       

    30 августа 2017 г. 14:10

Ответы

Все ответы

  • 'Returns info if Windows 'KB2506143' in installed

    ' ----------------------------------------------------------'

    OptionExplicitDim objWMIService, strComputer strComputer = "."

    'Run the query'

    Set objWMIService = GetObject("winmgmts:{impersonationLevel=impersonate}!\\" &strComputer& "\root\cimv2")   Dim QFEs

    Dim QFE

    Set QFEs = objWMIService.ExecQuery ("Select * from win32_QuickFixEngineering where HotFixID like 'KB2506143'")

    ForEach QFE in QFEs

    Wscript.echo "Update installed"Next

    WScript.Quit

       
    30 августа 2017 г. 14:12
  • Я так понимаю это либо кусок скрипта где проверятся или детекшен метод что патч установлен?
    Так как не увидел в данном примере строчек для запуска MSU.

    Если обновление требует перезагрузки, то оно появится в классе win32_QuickFixEngineering не раньше, чем система будет перезагруженна и обновление установится полностью.

    30 августа 2017 г. 15:39
  • Я так понимаю это либо кусок скрипта где проверятся или детекшен метод что патч установлен?
    Так как не увидел в данном примере строчек для запуска MSU.

    Если обновление требует перезагрузки, то оно появится в классе win32_QuickFixEngineering не раньше, чем система будет перезагруженна и обновление установится полностью.

    Это отсюда тырк или подобного гайда. KB то хоть правильно указали?

    ну я такой прихожу и мур, мур, мур!

    31 августа 2017 г. 2:29
  • KB Указан верно. Сам скрипт взят из инструкции по настройки данной задачи.
    31 августа 2017 г. 7:45
  • И судя по всем да, это детекшн метод. В VB скриптах не силен, а точнее вообще 0. Получается скрипт просто проверяет установлен ли патч или нет, и все? Сам KB он не ставит?
    31 августа 2017 г. 7:58
  • Сама строчка запуска находится в Sccm -> deployment type -> programs

    c:\windows\system32\wusa.exe “KB2506143.msu” /quiet /norestart

    31 августа 2017 г. 9:19
  • И судя по всем да, это детекшн метод. В VB скриптах не силен, а точнее вообще 0. Получается скрипт просто проверяет установлен ли патч или нет, и все? Сам KB он не ставит?
    Да, так и есть

    ну я такой прихожу и мур, мур, мур!

    1 сентября 2017 г. 3:09
  • Сама строчка запуска находится в Sccm -> deployment type -> programs

    c:\windows\system32\wusa.exe “KB2506143.msu” /quiet /norestart

    У Вас КБ где лежит? Сдается мне SCCm просто не знает откуда его ставить.

    ну я такой прихожу и мур, мур, мур!

    1 сентября 2017 г. 3:13
  • Лежит на сервере sccm там где все дистрибутивы на установку, и с данной директории он успешно устанавливает нужные пакеты. Загвостка только с данным KB.
    1 сентября 2017 г. 6:32
  • Самый простой путь к диагностике - запустить и детекшен-скрипт, и команду на установку на проблемной машине вручную и посмотреть на результат.
    4 сентября 2017 г. 7:17
  • Попробуйте вот так (только kb замените):
    'Returns info if Windows 'KB2506143'  in installed
    ' ----------------------------------------------------------'
    Option Explicit
     
    Dim objWMIService, strComputer
    strComputer = "."
     
    'Run the query
    Set objWMIService = GetObject("winmgmts:{impersonationLevel=impersonate}!\\.\root\cimv2")
     
    Dim QFEs
    Dim QFE
    Set QFEs = objWMIService.ExecQuery ("Select * from win32_QuickFixEngineering where HotFixID like 'KB2506143'")
    For Each QFE in QFEs
        Wscript.echo "Update installed"
    Next
    WScript.Quit


    4 сентября 2017 г. 13:49
  • пробовал, не сработало. Зато убрав из строчки:

    Set objWMIService = GetObject("winmgmts:{impersonationLevel=impersonate}!\\" &strComputer& "\root\cimv2")  

    символы "&amp" и оставив только ";strComputer;" сразу заработало.

    Спасибо за отклик!

    7 сентября 2017 г. 7:34
  • Сталкивался с таким. Проблема заключалась в том, что wusa была запущена. Обошел это обычным cmd 

    taskkill /F /T /IM  wusa.exe
    c:\windows\system32\wusa.exe "%~dp0kb******.msu" /quiet /norestart


    12 сентября 2017 г. 13:09