इस लेख में हम दिखाएंगे कि एक्टिव डायरेक्टरी डोमेन में विंडोज कंप्यूटर्स पर ग्रुप पॉलिसी (GPO) सेटिंग्स को कैसे अपडेट करें: ग्रुप पॉलिसी को स्वचालित रूप से कैसे अपडेट (रिफ्रेश) करें, GPUpdate कमांड का उपयोग कैसे करें, ग्रुप पॉलिसी मैनेजमेंट कंसोल (GPMC.msc) या Invoke-GPUpdate PowerShell cmdlet का उपयोग करके उन्हें रिमोटली कैसे अपडेट करें।
ग्रुप पॉलिसी रिफ्रेश अंतराल कैसे बदलें?
इससे पहले कि आपने स्थानीय या डोमेन ग्रुप पॉलिसी (GPO) में नई सेटिंग्स सेट की हैं, विंडोज क्लाइंट्स पर लागू हों, ग्रुप पॉलिसी क्लाइंट सर्विस को पॉलिसी पढ़नी होगी और विंडोज सेटिंग्स में बदलाव करने होंगे। इस प्रक्रिया को ग्रुप पॉलिसी अपडेट कहा जाता है। GPO सेटिंग्स तब अपडेट होती हैं जब कंप्यूटर बूट होता है, उपयोगकर्ता लॉग ऑन करता है, और बैकग्राउंड में हर 90 मिनट + 0-30 मिनट का एक रैंडम टाइम ऑफसेट (इसका मतलब है कि पॉलिसी सेटिंग्स निश्चित रूप से क्लाइंट्स पर 90-120 मिनट में लागू होंगी जब आपने डोमेन कंट्रोलर पर GPO फ़ाइलें अपडेट की हैं)।
डिफ़ॉल्ट रूप से, डोमेन कंट्रोलर्स GPO सेटिंग्स को अधिक बार अपडेट करते हैं: हर 5 मिनट।
आप GPO अपडेट अंतराल को Set Group Policy refresh interval for computers विकल्प का उपयोग करके बदल सकते हैं जो Computer Configuration -> Administrative Templates -> System -> Group Policy सेक्शन में GPO में स्थित है।
पॉलिसी सक्षम करें और निम्न विकल्पों के लिए समय (मिनट में) सेट करें:
- This setting allows you to customize how often Group Policy is applied to computers (0 से 44640 मिनट) क्लाइंट को बैकग्राउंड में GPO सेटिंग्स को कितनी बार रिफ्रेश करना चाहिए। यदि आप यहां 0 सेट करते हैं, तो पॉलिसी हर 7 सेकंड में अपडेट होगी (यह करने लायक नहीं है);
- This is a random time added to the refresh interval to prevent all clients from requesting Group Policy at the same time (0 से 1440 मिनट) पिछले पैरामीटर में ऑफसेट के रूप में जोड़े गए रैंडम टाइम अंतराल का अधिकतम मान (DC पर GPO फ़ाइलें डाउनलोड करने के लिए एक साथ क्लाइंट कॉल की संख्या को कम करने के लिए उपयोग किया जाता है)।
ध्यान दें कि बार-बार GPO अपडेट के परिणामस्वरूप डोमेन कंट्रोलर्स पर ट्रैफिक बढ़ता है और नेटवर्क लोड अधिक होता है।
GPO सेटिंग्स को जबरन रिफ्रेश करने के लिए GPUpdate.exe कमांड का उपयोग करना
सभी एडमिनिस्ट्रेटर gpupdate.exe कमांड को जानते हैं जो कंप्यूटर पर ग्रुप पॉलिसी सेटिंग्स को अपडेट करने की अनुमति देता है। ऐसा करने के लिए, अधिकांश बिना किसी हिचकिचाहट के gpupdate /force कमांड का उपयोग करते हैं। कमांड आपके कंप्यूटर को डोमेन कंट्रोलर से सभी GPOs पढ़ने और सभी सेटिंग्स को फिर से लागू करने के लिए मजबूर करता है। इसका मतलब है कि जब force कुंजी का उपयोग किया जाता है, तो क्लाइंट उन सभी पॉलिसी के लिए फ़ाइलों को पुनः प्राप्त करने के लिए डोमेन कंट्रोलर से कनेक्ट होता है जो इसे लक्षित करती हैं। इसके परिणामस्वरूप आपके नेटवर्क और डोमेन कंट्रोलर पर अधिक लोड हो सकता है।
बिना किसी पैरामीटर के एक साधारण gpudate कमांड केवल नई और बदली हुई GPO सेटिंग्स लागू करता है।
यदि यह सफल रहा, तो निम्न संदेश दिखाई देता है:
Updating policy... Computer Policy update has completed successfully. User Policy update has completed successfully.
आप केवल उपयोगकर्ता की GPO सेटिंग्स अपडेट कर सकते हैं:
gpupdate /target:user
या केवल कंप्यूटर की पॉलिसी सेटिंग्स:
gpupdate /target:computer /force
यदि कुछ पॉलिसी बैकग्राउंड में अपडेट नहीं हो सकतीं, तो gpupdate वर्तमान उपयोगकर्ता को लॉग ऑफ कर सकता है:
gpupdate /target:user /logoff
या कंप्यूटर को रीस्टार्ट करें (यदि GPO परिवर्तन केवल विंडोज बूट होने पर लागू किए जा सकते हैं):
gpupdate /Boot
ग्रुप पॉलिसी मैनेजमेंट कंसोल (GPMC) से रिमोट GPO अपडेट को कैसे बाध्य करें?
विंडोज सर्वर 2012 और नए में, आप GPMC.msc (ग्रुप पॉलिसी मैनेजमेंट कंसोल) का उपयोग करके डोमेन कंप्यूटर्स पर ग्रुप पॉलिसी सेटिंग्स को रिमोटली अपडेट कर सकते हैं।
विंडोज 10 में, GPMC कंसोल का उपयोग करने के लिए आपको RSAT इंस्टॉल करना होगा:
Add-WindowsCapability -Online -Name Rsat.GroupPolicy.Management.Tools~~~~0.0.1.0
फिर किसी भी सेटिंग को बदलने के बाद, या एक नया GPO बनाने और लिंक करने के बाद, GPMC में आपके इच्छित Organizational Unit (OU) पर राइट-क्लिक करना और कॉन्टेक्स्ट मेनू में Group Policy Update चुनना पर्याप्त है। एक नई विंडो में, आप उन कंप्यूटर्स की संख्या देखेंगे जिन पर GPO अपडेट किया जाएगा। Yes पर क्लिक करके पॉलिसी के जबरन अपडेट की पुष्टि करें।
फिर GPO को OU में प्रत्येक कंप्यूटर पर एक-एक करके रिमोटली अपडेट किया जाएगा, और आपको कंप्यूटर्स पर ग्रुप पॉलिसी अपडेट स्टेटस के साथ परिणाम मिलेगा (Succeeded/Failed)।
यह फीचर प्रत्येक लॉग्ड-ऑन उपयोगकर्ता के लिए टास्क शेड्यूलर में GPUpdate.exe /force कमांड के साथ एक टास्क बनाता है। टास्क एक रैंडम अवधि (10 मिनट तक) में चलता है ताकि नेटवर्क लोड कम हो।
क्लाइंट पर GPMC रिमोट GPO अपडेट फीचर के काम करने के लिए निम्न शर्तें पूरी होनी चाहिए:
- TCP पोर्ट 135 विंडोज डिफेंडर फ़ायरवॉल नियमों में खुला होना चाहिए;
- विंडोज मैनेजमेंट इंस्ट्रूमेंटेशन और टास्क शेड्यूलर सेवाएं सक्षम होनी चाहिए।
यदि कंप्यूटर बंद है या फ़ायरवॉल उस तक पहुंच को ब्लॉक करता है, तो कंप्यूटर के नाम के आगे 'The remote procedure call was canceled. Error Code 8007071a' संदेश दिखाई देता है।
दरअसल, यह फीचर उसी तरह काम करता है जैसे आपने प्रत्येक कंप्यूटर पर मैन्युअली GPUpdate /force कमांड का उपयोग करके GPO सेटिंग्स अपडेट की हों।
Invoke-GPUpdate: PowerShell के माध्यम से रिमोट ग्रुप पॉलिसी अपडेट बाध्य करें
आप Invoke-GPUpdate PowerShell cmdlet (RSAT का हिस्सा) का उपयोग करके कंप्यूटर्स पर रिमोट GPO अपडेट भी कॉल कर सकते हैं। उदाहरण के लिए, किसी विशिष्ट कंप्यूटर पर उपयोगकर्ता पॉलिसी सेटिंग्स को रिमोटली अपडेट करने के लिए, आप निम्न कमांड का उपयोग कर सकते हैं:
Invoke-GPUpdate -Computer "frparsrv12" -Target "User"
यदि आप Invoke-GPUpdate cmdlet को बिना किसी पैरामीटर के चलाते हैं, तो यह वर्तमान कंप्यूटर पर GPO सेटिंग्स अपडेट करेगा (gpudate.exe की तरह)।
Get-ADComputer cmdlet के साथ, आप किसी विशिष्ट OU में सभी कंप्यूटर्स पर GPO अपडेट कर सकते हैं:
Get-ADComputer –filter * -Searchbase "OU=Computes,OU=Mun,OU=DE,dc=woshub,dc=com" | foreach{ Invoke-GPUpdate –computer $_.name -force}
या उन सभी कंप्यूटर्स पर जो विशिष्ट आवश्यकता को पूरा करते हैं (उदाहरण के लिए, डोमेन में सभी विंडोज सर्वर होस्ट पर):
Get-ADComputer -Filter {enabled -eq "true" -and OperatingSystem -Like '*Windows Server*' }| foreach{ Invoke-GPUpdate –computer $_.name –RandomDelayInMinutes 10 -force}
आप RandomDelayInMinutes का उपयोग करके GPO अपडेट के लिए एक रैंडम ऑफसेट सेट कर सकते हैं। इस प्रकार, यदि आप एक साथ कई कंप्यूटर्स पर ग्रुप पॉलिसी सेटिंग अपडेट कर रहे हैं तो आप नेटवर्क लोड कम कर सकते हैं। ग्रुप पॉलिसी सेटिंग्स को तुरंत लागू करने के लिए, RandomDelayInMinutes 0 पैरामीटर का उपयोग किया जाता है। Invoke-GPUpdate कमांड अनुपलब्ध कंप्यूटर्स के लिए निम्न त्रुटि लौटाता है:
Invoke-GPUpdate: Computer "frparsrv12" is not responding. The target computer is either turned off or Remote Scheduled Tasks Management Firewall rules are disabled.
यदि आप Invoke-GPUpdate cmdlet को रिमोटली चलाते हैं या GPMC से GPO अपडेट करते हैं, तो चल रहे gpupdate कमांड के साथ एक कंसोल विंडो थोड़े समय के लिए उपयोगकर्ता डेस्कटॉप पर दिखाई दे सकती है।