WSUS 3 és .Net 4.x

Bizonyos okok miatt az a döntés született, hogy egy SBS2011-en legyen újratelepítve a WSUS. Az eltávolítással nem is voltak gondok, de az ismételt telepítés nem akart semmilyen módon összejönni.

Mivel tudom, hogy nem feltétlenül szükséges a CD2 a telepítéshez, elég letölteni a netről a legújabb verziót, így azzal próbálkoztam. Viszont akárhányszor nekifutottam, akár emelt szintű parancs-sorral, akár grafikus felületről, a WSUSSetup egy adott ponton folyamatosan hibát jelzett s rollback-elt:
Error 0x80070643: Végzetes hiba történt a telepítés során. (Igen, egy magyar SBS-ről van szó, mindenki tudja a véleményem a fordításokról ).
Nem voltam biztos benne, hogy mi okozza a problémát, így megpróbáltam a szóba jöhető hibákat kiküszöbölni: jogosultságot állítani, függőséget megszüntetni (pl. belső adatbázist is eltávolítani), könyvtárakat üríteni (pl. Windows\SysMSI), a hiba továbbra is megmaradt.

Miután már – nem folyamatosan, de – több órám/napom ráment a történetre, úgy döntöttem, visszatérek az alapokhoz, s megpróbálom a termék logja alapján megkeresni a hibát. Mivel a WSUSCa logban található „hiba”-bejegyzés („The certificate you created is expired.”) csak Warning állapotú volt (bár ez az egy sor is megérne egy misét), a WSUSSetupmsi logot vettem górcső alá. Itt a telepítés lépéseit a következő sorok akasztották meg (ezután már a visszagörgetés műveletei olvashatóak):
Note: 1: 1722 2: PERF_COUNTER_INST 3: C:\Program Files\Update Services\Setup\HideConsoleApp.exe 4: C:\Windows\Microsoft.NET\Framework64\v4.7.2053\InstallUtil.exe /LogFile=”C:\Users\voros\AppData\Local\Temp\WSUSCa_170818_2143.log” /ShowCallStack /WsusInstall /CategoryMessageFile=”C:\Program Files\Update Services\Common\EventCategories.dll ” “C:\Program Files\Update Services\Setup\bin\Microsoft.UpdateServices.Setup.CustomActions.dll ”
CustomAction PERF_COUNTER_INST returned actual error code -1 (note this may not be 100% accurate if translation happened inside sandbox)
Termék: Windows Server Update Services 3.0 SP2 — Hiba 1722. Probléma lépett fel a Windows Installer csomaggal.

Tehát a .Net keretrendszer segítségével nem tudott egy utasítást végrehajtani. Az mondjuk már korábban feltűnt, hogy az adott kiszolgálón .Net 4.7 van (amiről tudjuk, hogy pl. az Exch még nem támogatja), viszont rákeresve, kiderül, hogy a neten rengeteg panasz van minden esetben, amikor Wsus3-at szeretnének telepíteni bármely .Net 4.x-et tartalmazó gépre
Az általában javasolt megoldás: eltávolítani a .Net 4.x-et, feltenni a Wsus-t, majd (ha szükséges), vissza lehet tenni a keretrendszert… Kipróbáltam, s bevált: nálam is szépen települt a frissítő-kiszolgáló.

Egy dolog viszont nem hagyott nyugodni, s egy kicsit jobban megkapirgáltam a történetet (s ennél van lehetőség még mélyebbre ásni): a telepítő azért hasal el, mert olyan útvonalon keresi a .Net keretrendszer adott .exe állományát, ami nem létezik. Amennyiben átmásoljuk a teljes .Net könyvtárat a logban jelzett útvonalra, máris rengeteg időt s energiát megspórolunk, hiszen nem kell feleslegesen leszedni/feltenni a keretrendszert (+ a frissítéseit) és a telepítés is sikeresen lezajlik.
S hogy a Wsus telepítő honnan veszi/építi a kérdéses útvonalat – ezzel most tényleg nem akartam foglalkozni (a .Net azon logikáját, hogy megszüntették az útvonalban a verziózást, jobban értem).

Forrás:https://asteriksz.wordpress.com/