Begrijpen van het GPUpdate Commando [In Detail]

Groepsbeleid is een populaire service van Active Directory die tegenwoordig door veel organisaties wordt gebruikt. Als jouw organisatie gebruikmaakt van Groepsbeleid, is de kans groot dat je bekend bent met het gpupdate-commando; meer specifiek, het gpupdate /force-commando.

Weet jij wat gpupdate doet? Moet je ooit de force-parameter gebruiken? En zo ja, wanneer heeft dat zin?

In dit artikel ga je ontdekken wat gpupdate doet, hoe het werkt, en hoe je optimaal gebruik kunt maken van de beschikbare opties.

Wat is GPUpdate?

Gpupdate is een command-line utility van Microsoft die wordt geleverd bij alle versies van het Windows-besturingssysteem. Het is een hulpprogramma dat de toepassing regelt van groepsbeleidsobjecten (GPO’s) op toegewezen computers binnen Active Directory.

Normaal gesproken, wanneer een beheerder een GPO toewijst aan een computer of gebruiker, controleert die computer automatisch bij een domeincontroller en past de instellingen toe die in de GPO zijn gedefinieerd. Er is geen tussenkomst nodig; het proces verloopt automatisch.

Er zijn momenten buiten het reguliere automatische schema waarin een beheerder de computer moet dwingen om te controleren op nieuwe of gewijzigde GPO’s. In deze situatie komt gpupdate van pas.

De gpupdate-opdracht controleert in een notendop bij een domeincontroller voor nieuwe of bijgewerkte GPO’s die zijn toegewezen aan een computer en probeert ze onmiddellijk toe te passen.

Vereisten

Als je een van de voorbeelden in deze tutorial wilt uitvoeren, zijn de vereisten voor dit artikel minimaal.

  • A Windows computer joined to an Active Directory domain
  • Ten minste één GPO toegewezen aan de computer waarop je werkt

Hoe Gpupdate werkt

Wanneer je voor een computer bent gaan zitten die is verbonden met een domein, en je opent de Windows-commandprompt of PowerShell en voert gpupdate uit, worden er een reeks taken gestart.

Gpupdate in action
  1. Gpupdate start de Group Policy-clientservice. Deze service is verantwoordelijk voor het ontdekken en toepassen van nieuwe instellingen voor het groepsbeleid.

2. De Group Policy-clientsservice zoekt vervolgens contact met de aanmeldings-DC van de computer en controleert of er nieuwe GPO’s zijn of updates voor bestaande GPO’s beschikbaar zijn.

3. Als de Group Policy-clientsservice nieuwe GPO’s vindt of degene die lokaal zijn gewijzigd met gpedit.msc, verwerkt het proces alle client-side extensions (CSE’s) te beginnen met computervoorkeuren gevolgd door gebruikersvoorkeuren.

De Group Policy-clientsservice registreert gebeurtenissen in Logboeken voor toepassingen en services\Microsoft\Windows\GroupPolicy\Operational.

Gpupdate applies computer settings before the user settings.

Gerelateerd: Hoe Group Policy werkt (Gedetailleerd)

4. Eenmaal klaar, wacht de Group Policy Client-service tot het volgende vernieuwingsinterval, dat standaard 90 minuten plus een willekeurige offset van maximaal 30 minuten is.

Sommige groepsbeleidsinstellingen vereisen dat de gebruiker uitlogt of de computer opnieuw opstart om van kracht te worden. Als een van deze instellingen deel uitmaakte van het beleid, zal gpupdate vragen om uit te loggen of de computer opnieuw op te starten.

De Beruchte /force-schakelaar Uitgelegd

Je kent nu de basisprincipes van wat er gebeurt wanneer je gpupdate uitvoert. Tot nu toe lijkt alles te werken, toch? In een typisch scenario werkt het uitvoeren van gpupdate en het doorlopen van het proces prima. Maar er zijn momenten waarop je sommige dingen moet afdwingen.

Een van de meest gebruikte parameters van gpupdate is de /force-schakelaar. Deze schakelaar is op de een of andere manier in het hoofd van elke IT-professional ingeprent als een noodzakelijke schakelaar om te gebruiken. In tegenstelling tot wat algemeen wordt gedacht, heb je hem eigenlijk niet nodig, tenzij onder bepaalde omstandigheden.

Standaard is gpupdate slim; het vergelijkt alle huidige instellingen met eventuele nieuwe instellingen en past ze alleen toe. Maar je kunt gpupdate ook dwingen om alle instellingen opnieuw toe te passen met behulp van de /force-schakelaar. Waarom zou je dat moeten doen?

Soms wijken instellingen af van hun verwachte waarden. Als bijvoorbeeld een gebruiker een Windows-functie uitschakelt die wordt beheerd door een bestaand beleid, zal het uitvoeren van gpupdate /force de service Group Policy Client dwingen om de waarde opnieuw te beoordelen en terug te brengen naar de verwachte waarde. Of misschien wilt u een gebruiker opnieuw toevoegen aan een beperkte groep waaruit deze is verwijderd.

De service Group Policy Client past regelmatig sommige instellingen toe, zoals beveiligingsinstellingen (standaardinterval is 16 uur).

De belangrijkste reden om de /force-schakelaar niet te gebruiken, is wanneer u te maken heeft met instellingen die alleen kunnen worden toegepast bij aanmelden of opstarten. In dat geval zal Windows u telkens vragen om af te melden of opnieuw op te starten wanneer u gpupdate /force uitvoert, zelfs als nieuwe instellingen dergelijke acties niet vereisen.

Dieper ingaan op de Parameters van Gpupdate

Nu u een basisbegrip heeft van hoe gupdate werkt en weet wanneer en hoe u de /force-schakelaar moet gebruiken, laten we ons nu richten op alle andere functionaliteiten die gpupdate biedt.

Hulp krijgen

Zoals verwacht kan het gpupdate-commando informatie bieden over elke parameter en wat ze doen. Hoewel het ontbreekt aan diepgang, is de /? handig als u snel een opfrissing nodig heeft over hoe u een bepaalde taak moet uitvoeren.

Gpupdate /? displays all the switches and options available with the command.

Computer- of Gebruikersinstellingen Targeten

Standaard vertelt gpupdate de service Group Policy Client om zowel computer- als gebruikersinstellingen te verwerken. Als u slechts één van deze sets wilt vernieuwen, kunt u de /target-parameter gebruiken.

Je hebt twee opties bij het gebruik van de /target-parameter; je kunt de computer of gebruikersinstellingen targeten met /target:computer of /target:user.

Je moet de /target-parameter alleen onder specifieke omstandigheden gebruiken, waarbij je eerst de gebruikersinstellingen target en vervolgens de computerinstellingen. Waarom? Soms hebben beleidsregels overlappende gebruikers- en computerinstellingen. Wanneer dit gebeurt, overschrijven de gebruikersinstellingen de computerinstellingen, wat kan leiden tot onverwacht gedrag.

Het maken van een Time-out

Gpupdate wordt meestal vrij snel uitgevoerd, maar problemen met een niet-reagerende DC of Group Policy-clientservice kunnen het proces vertragen. Als je gpupdate uitvoert in een script dat verdere taken moet uitvoeren na het uitvoeren van gpupdate, wil je misschien een time-out maken.

Je kunt gpupdate dwingen om na een bepaalde tijd de controle terug te geven aan het opdrachtvenster en het beleidsverwerkingsproces naar de achtergrond te duwen met de /wait-parameter. Beschikbare waarden voor de /wait-parameter staan hieronder vermeld.

Wait Value Result
0 Immediately returns control to console
-1 Waits indefinitely for gpupdate to finish
1+ Waits the number of seconds provided
600 Default value

Het afdwingen van een automatische afmelding

Sommige instellingen vereisen dat de gebruiker zich afmeldt en weer aanmeldt als achtergrondverwerking niet mogelijk is. Standaard zal gpupdate je vragen om af te melden wanneer het klaar is, indien dit het geval is. Als je echter meteen wilt afmelden zodra gpupdate klaar is, gebruik dan de /logoff-schakelaar.

De /logoff-schakelaar werkt niet altijd

Getest op zowel Windows 10 als Windows Server 2019, zul je soms een onbekend probleem tegenkomen waarbij de /logoff-parameter niet werkt.

Bijvoorbeeld, de onderstaande klant heeft een beleid toegewezen gekregen om desktopomleiding in te schakelen voor de ingelogde gebruiker. De instellingen voor mapomleiding kunnen alleen worden verwerkt bij aanmelding en niet tijdens de achtergrondvernieuwing van beleidsregels.

Zonder gebruik te maken van de /logoff-schakelaar ziet een gewone gebruiker de onderstaande waarschuwing om af te melden wanneer een nieuwe instelling dit vereist, zoals verwacht. Maar ongeacht of u de /logoff-schakelaar gebruikt of niet, wordt u nog steeds gevraagd en zal Windows niet afmelden.

Warning to log off after gpupdate

Om ervoor te zorgen dat u wordt afgemeld in dit scenario, moet u ook de /force-schakelaar gebruiken.

Het afdwingen van een automatische herstart

Vergelijkbaar met de /logoff-schakelaar, start de /boot-schakelaar automatisch een computer opnieuw op als Windows geen enkele computert instellingen kan verwerken in de achtergrond. De /boot-schakelaar wordt vaak gebruikt voor installaties van software die zijn gericht op computers.

Het afdwingen van synchrone verwerking

De service Groepsbeleidclient past beleidsregels parallel (asynchroon) of één voor één (synchroon) toe. Windows verwerkt beleidsregels synchroon alleen bij gebruikersaanmelding en computeropstart anders asynchroon.

Tijdens synchrone verwerking roept de Groepsbeleidclient al zijn CSE’s aan, zelfs als er geen instellingen zijn gewijzigd. Synchrone verwerking is noodzakelijk omdat sommige instellingen afhankelijk zijn van andere.

Je kunt de schakelaar /sync combineren met ofwel /target: user of /target:computer. Je kunt de /sync schakelaar alleen gebruiken terwijl het opdrachtvenster wordt uitgevoerd als administrator. Zo niet, dan zul je de foutmeldingen Access Denied hieronder zien.

Running gpupdate /sync as a normal user is not allowed.
Running gpupdate /sync as administrator prompts for a restart.

Gerelateerd: Hoe PowerShell uitvoeren als beheerder

Asynchrone verwerking is een manier om de aanmeldervaring van domeingebruikers te optimaliseren. Voor Windows XP was alle beleidsverwerking synchroon, met als enige nadeel dat sommige instellingen twee aanmeldingen of twee herstarts vereisten voordat ze werden toegepast. De standaardmodus sinds Windows XP is nu asynchroon.

Conclusie

Als je dit artikel hebt gevolgd, moet je nu een duidelijk idee hebben van wat gpupdate doet en hoe je de schakelaars kunt gebruiken om het gedrag ervan te wijzigen. Als je geïnteresseerd bent in het gebruik van gpupdate op grotere schaal of automatisering ervan, zorg er dan voor dat je zijn PowerShell-tegenhanger bekijkt, Invoke-GPUpdate.

Source:
https://adamtheautomator.com/gpupdate/