Развертывание обновлений через SCCM, только когда пользователи вышли из системы
В SCCM для развертываний пакетов есть возможность сделать назначение обязательным и расписание при выходе из системы, а также параметры развертывания пакетов только тогда, когда ни один пользователь не вошел в систему.
Я хотел бы развернуть обновления программного обеспечения таким же образом. Я не вижу настроек, поэтому я предполагаю, что нужно использовать какой-то обходной путь, и я хотел бы знать, сделал ли кто-нибудь это, делает ли это или имеет представление о том, что я могу сделать для этого происходят. Я довольно разбираюсь в powershell, sccm и C#, поэтому все в этом духе было бы здорово. Я использую SCCM 2012 SP1 для справки.
1 ответ
После изучения документации SDK SCCM я в итоге сделал доступными обновления, но не обязательными. Это заполняет класс WMI с именем CCM_SoftwareUpdate в пространстве имен root/ccm/clientsdk, см. Здесь. Простой запрос, такой как
"SELECT * FROM CCM_SOFTWAREUPDATE WHERE COMPLIANCESTATE=0 AND EVALUATIONSTATE < 2"
Вы получите доступные обновления, которые еще не установлены. Когда обновления установлены, в конечном итоге они будут удалены из этого пространства имен, но это займет некоторое время. Если по какой-либо причине вам нужно остановить и возобновить установку обновлений, это поможет отфильтровать частично установленные обновления. Страница msdn содержит больше информации о различных состояниях соответствия и состояниях оценки. Этот массив обновлений затем передается методу InstallUpdates класса CCM_SoftwareUpdatesManager в том же пространстве имен, и вы можете следить за ходом обновлений по отдельности (именно поэтому я решил передать свои обновления этому методу один за другим вместо всех в Передача их за один раз, на самом деле ничего не делает, кроме того, что ставит их в очередь и в любом случае устанавливает их один за другим, из того, что я видел).
Я запустил быстрый и грязный графический интерфейс на C# (его можно посмотреть здесь), который я установил в качестве сценария выхода из системы в групповой политике, чтобы при его запуске пользователи не могли от него выбраться, или нажимал кнопки, чтобы закрыть окно. или. Он настолько близок к реальному, насколько я могу себе представить (у нас есть контроль над фоном входа в систему, поэтому я сделал фон моего приложения таким же непротиворечивым).
Грустно то, что мы, вероятно, не примем это решение из множества ноутбуков в нашей среде. Никто не хочет выключить свой ноутбук и забрать его домой на один день, чтобы ждать неопределенного количества времени при установке обновлений, что в то время будет казаться вечным.