ค้นหาเว็บไซต์

แก้ไขปัญหาการประมวลผล GPO ที่ช้าและผลกระทบต่อความเร็วในการเข้าสู่ระบบ


บ่อยครั้งที่ผู้ใช้โดเมนบ่นเกี่ยวกับการเริ่มต้นคอมพิวเตอร์ช้าและเวลาเข้าสู่ระบบซึ่งเกิดจากการประมวลผลนโยบายกลุ่ม (GPO) ที่ยาวนาน จากมุมมองของผู้ใช้ คอมพิวเตอร์จะบู๊ตเป็นเวลานานและดูเหมือนว่าจะวางสายเป็นเวลาหลายนาทีในขั้นตอนของ “การใช้การตั้งค่าคอมพิวเตอร์/ผู้ใช้” ในบทความนี้ ฉันจะพยายามรวบรวมเครื่องมือการวินิจฉัยที่เป็นประโยชน์และวิธีการที่ช่วยให้ผู้ดูแลระบบสามารถระบุสาเหตุของ GPO ที่ช้าซึ่งใช้กับคอมพิวเตอร์โดเมนได้

จริงๆ แล้ว มีเหตุผลหลายประการที่ทำให้ Group Policies ใช้เวลานานในการนำไปใช้: สิ่งเหล่านี้อาจเป็นปัญหา DNS, ความพร้อมใช้งานของ DC และความเร็วในการเชื่อมต่อกับมัน, การกำหนดค่าไซต์ AD ไม่ถูกต้องหรือปัญหาการจำลองแบบ, นโยบายกลุ่มที่กำหนดค่าไม่ถูกต้อง, สคริปต์ที่ไม่ถูกต้อง ฯลฯ เป็นการยากที่จะอธิบายอัลกอริทึมแบบครบวงจรเพื่อวินิจฉัยปัญหาทั้งหมดเหล่านี้ ตามกฎแล้วเมื่อแก้ปัญหาดังกล่าวประสบการณ์และทักษะของผู้ดูแลระบบที่ทำหน้าที่วินิจฉัยจะมีบทบาทสำคัญ ในบทความนี้ เราจะมุ่งเน้นไปที่การวินิจฉัยปัญหาของกลไก GPO และ GPClient เท่านั้น

วิธีบล็อกการสืบทอดนโยบายกลุ่ม

เพื่อให้แน่ใจว่าปัญหาเกี่ยวข้องกับ GPO ของโดเมน ให้สร้าง OU แยกต่างหากในโดเมนและย้ายคอมพิวเตอร์ที่มีปัญหาไปที่นั้น จากนั้นใช้ Group Policy Management Console (GPMC.msc) เปิดใช้งานการบล็อกการสืบทอดนโยบายสำหรับคอนเทนเนอร์นี้ (Block Inheritance) ดังนั้น นโยบายโดเมนทั้งหมดจะหยุดใช้กับคอนเทนเนอร์นี้ (นโยบายที่เปิดใช้งานโหมดบังคับใช้เป็นข้อยกเว้น)

รีสตาร์ทคอมพิวเตอร์และตรวจสอบว่าปัญหาเกี่ยวกับ GPO ช้าที่ใช้ ยังคงมีอยู่หรือไม่ หากยังคงมีอยู่ อาจเป็นไปได้ว่าปัญหาอยู่ที่ตัวคอมพิวเตอร์เองหรือนโยบายกลุ่มภายในเครื่อง (ลองรีเซ็ตให้เป็นค่าเริ่มต้น)

วิธีแสดงข้อมูลโดยละเอียดบนหน้าจอบูต

ใน Windows คุณสามารถเปิดใช้งานการแสดงข้อมูลสถานะโดยละเอียดซึ่งช่วยให้ผู้ใช้และผู้ดูแลระบบสามารถเข้าใจได้ด้วยสายตาว่าคอมพิวเตอร์โหลดความล่าช้ามากที่สุดในขั้นตอนใด หากคุณเปิดใช้งานนโยบายนี้ ข้อมูลเกี่ยวกับส่วนประกอบ GPO ที่กำลังใช้จะแสดงขึ้นด้วย
คุณสามารถเปิดใช้งานนโยบายนี้ได้ในส่วน GPO ต่อไปนี้:

  • ใน Windows 7/Vista : Computer Configuration -> Policies -> System -> Verbose vs normal status message=Enabled

  • ใน Windows 8/10: การกำหนดค่าคอมพิวเตอร์ -> นโยบาย -> ระบบ -> แสดงข้อความสถานะที่มีรายละเอียดสูง=เปิดใช้งาน

สามารถเปิดใช้งานพารามิเตอร์เดียวกันผ่านรีจิสตรี ในการดำเนินการนี้ ให้สร้างพารามิเตอร์ DWORD ด้วยชื่อ verbosestatus และค่า 1 ในคีย์รีจิสทรี HKEY_LOCAL_MACHINE\SOFTWARE Microsoft \Windows \CurrentVersion\Policies\System

เป็นผลให้ระหว่างการบู๊ตคุณจะเห็นข้อความต่อไปนี้บนหน้าจอ:

รายงานผล GPR

เป็นการดีกว่าที่จะวิเคราะห์นโยบายผลลัพธ์ที่ใช้กับคอมพิวเตอร์โดยใช้รายงาน GPResult HTML ที่สามารถสร้างได้ด้วยคำสั่งต่อไปนี้ที่เรียกใช้ด้วยสิทธิ์ของผู้ดูแลระบบ:

gpresult /h c:\scripts\gpreport.html

รายงานนี้ค่อนข้างสะดวกสำหรับการวิเคราะห์และมีการอ้างอิงถึงข้อผิดพลาดเมื่อใช้ GPO

นอกจากนี้ ในส่วน รายละเอียดคอมพิวเตอร์ -> สถานะคอมโพเนนต์ ของรายงาน ยังมีข้อมูลที่เป็นประโยชน์ของเวลาที่ใช้ (เป็น ms) ของคอมโพเนนต์ GPO ต่างๆ ที่มีลักษณะดังนี้:

Group Policy Files (N/A) 432 Millisecond(s) 19.02.2017 11:10:01 View Log
Group Policy Folders (N/A) 188 Millisecond(s) 19.02.2017 11:10:00 View Log
Group Policy Local Users and Groups (N/A) 338 Millisecond(s) 19.02.2017 11:10:00 View Log
Group Policy Registry (N/A) 171 Millisecond(s) 19.02.2017 11:10:01 View Log
Group Policy Scheduled Tasks (N/A) 353 Millisecond(s) 19.02.2017 11:10:01 View Log
Scripts (N/A) 156 Millisecond(s) 19.02.2017 11:09:04 View Log
Security (N/A) 3 Second(s) 495 Millisecond(s) 19.02.2017 11:09:08 View Log
Registry (N/A) 18 Second(s) 814 Millisecond(s) 19.02.2017 11:10:00 View Log

การวิเคราะห์เหตุการณ์นโยบายกลุ่มในบันทึกระบบ Windows

ในบันทึกของแอปพลิเคชัน EventID 6006 จาก Winlogon ที่มีข้อความต่อไปนี้สามารถเป็นหลักฐานของแอปพลิเคชันนโยบายที่ช้าได้:

สมาชิกการแจ้งเตือน winlogon ใช้เวลา 3104 วินาทีในการจัดการเหตุการณ์การแจ้งเตือน (CreateSession)

ตามเหตุการณ์นี้ ผู้ใช้ต้องรอจนกว่านโยบายกลุ่มจะถูกนำไปใช้ระหว่างการบู๊ตเป็นเวลาเกือบหนึ่งชั่วโมง...

ใน Windows 7/Windows 2008 R2 หรือสูงกว่า เหตุการณ์ทั้งหมดที่เกี่ยวข้องกับการประมวลผลนโยบายกลุ่มบนไคลเอนต์จะพร้อมใช้งานใน Event Viewer (eventvwr.msc) ใน Applications and Services Logs -> Microsoft -> Windows -> Applications and Services บันทึก -> นโยบายกลุ่ม -> การทำงาน

หมายเหตุ ในบันทึกของระบบ จะเหลือเฉพาะเหตุการณ์ที่เกี่ยวข้องกับการทำงานของ Group Policy Client (gpsvc) เท่านั้น

ในการวิเคราะห์เวลาที่ใช้นโยบาย EventID ต่อไปนี้จะมีประโยชน์:

  • เหตุการณ์ที่มีรหัส 4016 และ 5016 จะแสดงเวลาที่การประมวลผลส่วนขยายแอปพลิเคชัน GPO เริ่มต้นและสิ้นสุด หลังยังระบุเวลาทั้งหมดของการประมวลผลส่วนขยาย ตัวอย่างเช่น ในภาพหน้าจอด้านล่างการกรอง Group Policy -> Operational โดย EventID 4016 และ 5016 ถูกเปิดใช้งาน ในข้อความของ EventID 5016 คุณสามารถดูเวลาของการประมวลผลส่วนประกอบ GPO นี้ได้

    เสร็จสิ้นการประมวลผลส่วนขยายของ Group Policy Registry ใน 109656 มิลลิวินาที

  • รหัสเหตุการณ์ 5312 มีรายการของนโยบายที่นำไปใช้ และรหัสเหตุการณ์ 5317 จะแสดงรายการของ GPO ที่ถูกกรอง

  • EventID 8000 และ 8001 ประกอบด้วยเวลาในการประมวลผลนโยบายของคอมพิวเตอร์และผู้ใช้ระหว่างการบูตตามลำดับ และ EventID 8006 และ 8007 มีข้อมูลเกี่ยวกับเวลาของการใช้นโยบายระหว่างการอัปเดตปกติ

เสร็จสิ้นการประมวลผลนโยบายการบู๊ตของคอมพิวเตอร์สำหรับ CORP\pc212333$ใน 28 วินาที

เมื่อวิเคราะห์บันทึก ให้ใส่ใจกับเวลาระหว่างสองเหตุการณ์ที่อยู่ใกล้เคียงกัน สามารถช่วยในการค้นหาส่วนประกอบของปัญหา

บันทึกการดีบัก GPSVC

ในบางกรณี การเปิดใช้งานบันทึกดีบักการประมวลผล GPO — gpsvc.log จะเป็นประโยชน์ การใช้การประทับเวลาใน gpsvc.log คุณจะพบส่วนประกอบ GPO ที่ได้รับการประมวลผลเป็นเวลานาน

บันทึกดีบักการตั้งค่านโยบายกลุ่ม

ส่วนขยายการกำหนดลักษณะนโยบายกลุ่มยังสามารถบันทึกการบูตของคอมโพเนนต์ CSE (ส่วนขยายฝั่งไคลเอ็นต์) แต่ละรายการ บันทึกการแก้ไขข้อบกพร่อง CSE สามารถเปิดใช้งานในส่วน GPO ต่อไปนี้: การกำหนดค่าคอมพิวเตอร์ -> นโยบาย -> เทมเพลตการดูแลระบบ -> ระบบ -> นโยบายกลุ่ม -> การบันทึกและการติดตาม

อย่างที่คุณเห็น การตั้งค่าแต่ละรายการจะพร้อมใช้งานสำหรับแต่ละ CSE ในการตั้งค่านโยบาย คุณสามารถระบุประเภทเหตุการณ์ที่บันทึก (ข้อมูล ข้อผิดพลาด คำเตือน หรือทั้งหมด) ขนาดบันทึกสูงสุด และเส้นทางตำแหน่งบันทึก:

  • ไฟล์การติดตามนโยบายผู้ใช้ %SYSTEMDRIVE%\ProgramData\GroupPolicy\Preference\Trace\User.log

  • ไฟล์การติดตามนโยบายคอมพิวเตอร์ %SYSTEMDRIVE%\ProgramData\GroupPolicy\Preference\Trace\Computer.log

เคล็ดลับ หากคุณไม่มีส่วนย่อยการบันทึกและการติดตามในส่วนนโยบายกลุ่มของคอนโซล gpedit.msc/ GPMC ให้ดาวน์โหลดและติดตั้งเทมเพลต Group Policy Preferences ADMX และคัดลอก GroupPolicyPreferences.admx จาก %PROGRAMFILES%\Microsoft Group Policy ไปยังโฟลเดอร์ในเครื่อง PolicyDefinitions หรือไปยังไดเรกทอรีส่วนกลาง PolicyDefinitions ใน SYSVOL

หลังจากรวบรวมบันทึกแล้ว คุณต้องวิเคราะห์หาข้อผิดพลาดและพยายามค้นหาเหตุการณ์ใกล้เคียงด้วย ซึ่งเวลาระหว่างนั้นจะต่างกันไม่กี่นาที

ดังนั้นในบทความนี้ เราได้พิจารณาวิธีหลักในการวินิจฉัยการประมวลผล Group Policy ที่ช้าบนคอมพิวเตอร์โดเมน ฉันหวังว่าบทความนี้จะเป็นประโยชน์

บทความที่เกี่ยวข้อง