WaaS - Funktioner på begäran - RSAT

<img style="”float:" right;” src="”https://www.recastsoftware.com/wp-content/uploads/2021/10/Recast-Logo-Dark_Horizontal.svg”" alt="&quot;Bild&quot;" height="”43″" width="”150″">

Funktioner på begäran - Installera om RSAT

Fjärrserveradministrationsverktyg eller RSAT används av många systemadministratörer. Under Windows 10 Service Upgrades, 1909 -> 20H2 till exempel, tas funktioner bort på krav. Det betyder att du måste göra något för att få dem att installeras om automatiskt om du vill förbättra användarupplevelsen. Du kan uppnå detta genom att aktivera dynamiska uppdateringar, men om det inte är ett alternativ har du några andra metoder.

En metod du kan göra är att lägga till dem direkt i WIM -filen du distribuerar, men sedan gör du din WIM större och den tillämpas på alla. Jag personligen gillar att hålla WIM så magert som möjligt och sedan dynamiskt ladda ner bara det som behövs.

Nästa metod, och den jag kommer att gå in på mer djup, är att skapa ett ConfigMgr -paket med den nödvändiga funktionen på efterfrågade hyttfiler och sedan använda ett powershell -steg i uppgraderingssekvensen för Windows för att installera RSAT

Skapa paketet och programmet ConfigMgr

Paketet är ett standardpaket med hytten Feature on Demand. Du måste hämta funktioner på begäran (skiva 1) från Microsoft: s volymlicensieringssajt. När du väl har ISO måste du ta tag i de funktioner på begäran som du behöver. Nu har skivan mycket mer än bara RSAT på den, tillsammans med många språk, så hela ISO -innehållet är cirka 5 GB, vilket du inte vill ha i ditt paket.
Jag hittade först detta skript på Microsoft -blogg som hjälpte till att få de filer jag behövde, men fann snabbt att det fortfarande fanns många saker kvar som jag inte behövde.

Jag tog det manuset och modifierade det och lade sedan till logiken för att automatiskt bygga ett CM-paket, tillsammans med ett program som används för förcachning. Manuset finns på GitHub.

Funktioner på begäran 02
Funktioner på begäran 01
Funktioner på begäran 10

För-cacheprogrammet skapas som gör att du kan ringa paketet dynamiskt i uppgiftssekvensen, så att det inte faktiskt refereras till i uppgiftssekvensen. Viktigt, du måste markera rutan på programmet på fliken Avancerat för "Tillåt att detta program installeras från installationspaketets uppgiftssekvens utan att distribueras"

Undvika att referera till paket i en arbetssekvens

Anledningen till att du vill undvika att ha paket som refereras i en aktivitetssekvens är när det paketet bara behövs på en liten delmängd av maskiner. Du kanske vill förcacha uppgiftsekvensen i förväg eller låta den ladda ner allt innehåll innan du startar uppgiftsekvensen, så du vill undvika att alla maskiner laddar ner en extra 100MB eller vad som händer när bara några få maskiner behöver det faktiskt. Exempel på när det här är till hjälp är Driver Packs, som kan vara mycket stora och du vill ha cachad i förväg, men de är modellspecifika.

Hur gör vi för att dynamiskt ladda ner innehållet endast på maskiner som vi vill att det ska laddas ner? Det tar några steg i uppgiftsordningen.

Här är våra funktioner på begäran -modul för RSAT, du kan se att det inte finns några referenser:
Funktioner på begäran 03

I uppgiftssekvensen kontrollerar jag först om RSAT redan är installerat på maskinen medan det är på nedre nivå OS (1909).

Funktioner på begäran 04

Nästa grupp körs bara om RSAT hittades, om den inte hittades hoppar den bara över gruppen och går vidare.
Funktioner på begäran 05

Här skapar vi en variabel som innehåller paket -ID, som används i nästa steg.
Funktioner på begäran 06

Nu tar vi ID och lägger till: Pre-cache, som är namnet på programmet på RSAT-paketet. Med denna information vet TS vad den ska ladda ner.
Funktioner på begäran 07

Detta steg laddar ner paketet ... eftersom det kör programmet du skapade, varför vi har en "dummy" kommandorad med "cmd.exe /c", så när det laddar ner paketet körs programmet direkt och gör ingenting, går sedan vidare. Det är så vi får paket att ladda ner utan att referera till det.
Funktioner på begäran 08

Nu när det har laddats ner måste vi hålla reda på var det finns i filsystemet, så att vi kan utnyttja filerna i det senare, det är där detta powershell -skript kommer in.
Funktioner på begäran 09

I grund och botten för att bryta ner det, kontrollerar vi två möjliga variabla platser som det kunde ha laddat ner till, cacheområdet för uppgiftssekvensen (_SMSTaskSeqeuncePackages) eller CM Cache (c: windowsccmcache). Om en av dem finns i TS -variablerna tar vi platsen och skickar den till vår egen variabel, i det här fallet "FoDs01", så att vi kan hitta paketinnehållet senare när vi vill använda dem.

Vid det här laget har vi laddat ner innehållet till maskinen och tagit plats för filerna, så att vi kan låta maskinen uppgradera fönster.

Efter Windows -uppgraderingar - Installera om RSAT

Efter uppgraderingen av maskinen (1909 -> 20H2) vill vi installera om RSAT. Genom att utnyttja variabeln som vi skapade före uppgraderingen "RSATEnabled", kommer vi att kalla skriptet för att installera om RSAT, vi ser också till att vi har platsen för filerna "FoDs01".

Funktioner på begäran 11

Sedan utnyttjar vi powershell igen för att installera Features on Demand.
Funktioner på begäran 12
Skriptet är på GitHub

Observera att om du har flera språk installerade på en enda maskin måste du ha alla språkfiler för varje funktion du vill installera. Jag stötte på det problemet när jag använde samma testmaskin för att installera om flera språk på en maskin och försökte installera om RSAT. RSAT -installationen misslyckades förrän jag gav den alla ytterligare språk -RSAT -filer för varje språk jag hade installerat.

Om Recast Software
1 av 3 organisationer som använder Microsoft Configuration Manager förlitar sig på Right Click Tools för att visa sårbarheter och åtgärda snabbare än någonsin tidigare.
Ladda ner gratis verktyg
Begär pris

Se hur Right Click Tools förändrar hur system hanteras.

Öka produktiviteten direkt med vår begränsade, kostnadsfria Community Edition.

Kom igång med Right Click Tools idag:

Dela detta:

Support

  • Detta fält används för valideringsändamål och ska lämnas oförändrat.

Kontakt

  • Detta fält används för valideringsändamål och ska lämnas oförändrat.
sv_SESwedish