Pull to refresh

Установка MSI через GPO — как не ошибиться с источником установки

Как известно, в Active Directory есть замечательная (для тех, кто не хочет ставить программы «ручками», а денег на System Center нет) возможность устанавливать ПО на рабочие станции с помощью групповых политик. Функционал у неё ограничен, но для развёртки программ в небольшой организации хватает — действительно, не всё же Офис и WinRAR руками ставить.
Я достаточно успешно пользуюсь этим функционалом, и успел наловить несколько багов и «подводных камней», о последнем из которых хочу рассказать.

Use DFS, ffs!
Основная ошибка, которую я допустил при создании групповых политик — это местоположение источника MSI-инсталляций.
Я создал папку MSI на сервере Server1, и указывал GPO в качестве источников на находящиеся там пакеты. Всё работало — до тех пор, пока Server1 не дал дуба. И тут выяснилось, что изменение местоположения источника установки MSI так, чтобы пакет не переустановился у всей организации- задача нетривиальная. Для этого нужно:

Зайти в ADSIEdit.msc, там открыть Domain -> DC=Domain,DC=com -> CN=System -> CN=Policies
Там хранятся все групповые политики.
В свойствах нужной (каждой!) «установочной» GPO посмотреть её GUID (он есть на вкладке Details в gpmc.msc), найти его в ADSIEdit в этих самых Policies, развернуть, и зайти либо в Machine\Class Store\Packages, либо в User\Class Store\Packages (в зависимости от того, на компьютер или на пользователя ставится MSI-пакет).
В этом месте будут объекты класса PackageRegistration, по одному на каждый MSI-пакет, прикрученный к политике. Нужно в каждый их них зайти и заменить в атрибуте msiFileList UNC-пусть к источнику пакета.
Затем повторить процедуру для всех-всех политик установки MSI-пакетов.

… а так как к моменту трагической гибели Server1 пакетов у меня образовалось штук сто, данная процедура заняла полдня. Чтобы избежать этой работы, достаточно было всего лишь вместо простой шары \\Server1\msi создать DFS Domain Root вида \\domain.com\msi. О чём я и спешу вам всем тут рассказать.

P.S. Кстати о DFS — в процессе поисков решения для смены источника MSI для GPO, маленькая особенность распределенной файловой системы Windows мне очень помогла пережить даунтайм: при создании Domain DFS Root вида \\domain.com\msi она начала отзываться и на всех доменных контроллерах под тем же видом (т.е. \\Server1\msi, \\Server2\msi и т.д.) — хотя Server1, хоть и был доменным контроллером, в то время лежал развинченным на несколько частей у меня на столе.
Tags:
Hubs:
You can’t comment this publication because its author is not yet a full member of the community. You will be able to contact the author only after he or she has been invited by someone in the community. Until then, author’s username will be hidden by an alias.