Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การแก้ไขปัญหา >> Mac

แก้ปัญหา corespotlightd CPU สูงบน macOS Sequoia: วิธีแก้ที่พิสูจน์แล้ว

ผู้ใช้จำนวนมากกำลังประสบปัญหา corespotlightd CPU overload ที่ต่อเนื่องบน macOS Sequoia มันทำให้ Mac ช้า, ทำให้ Mac และเคอร์เซอร์ค้าง, หรือแม้กระทั่งกระตุ้น kernel panic (ครัช) บ่อยครั้ง

ฉันเชื่อว่าคุณลอง force quit corespotlightd ใน Activity Monitor, reindexing Spotlight, และอัปเดตเป็น macOS 15.5 ล่าสุดแล้ว วิธีทั้งหมดนี้แค่รักษาอาการ ไม่ได้แก้สาเหตุรากฐาน

ไม่ต้องกังวล หลังจากสำรวจเป็นเดือน ทดสอบซ้ำๆ และอภิปราย เราได้ชุดวิธีที่เป็นไปได้เพื่อแก้ไขปัญหา corespotlightd CPU สูงบน macOS Sequoia หรือเวอร์ชันก่อนหน้าอย่างถาวร ปฏิบัติตามทีละขั้นจนกว่าจะหลุดพ้น

เราพบว่าปัญหา corespotlightd CPU overload ที่ต่อเนื่อง นี้เกิดขึ้นหลักบน MacBook M1 และ M2 ที่รัน macOS Sequoia น่าจะเกิดจากปัญหาการจัดสรรทรัพยากร ที่ corespotlightd ต้องการการเข้าถึงทรัพยากรเฉพาะอย่างเดียว และผลลัพธ์คือเข้าสู่ปัญหาและใช้ CPU สูง

ก่อนที่ Apple จะปรับแต่งการจัดสรรทรัพยากรสำหรับ corespotlightd วิธีต่อไปนี้เป็นวิธีที่คงอยู่ได้นานสำหรับการแก้ปัญหานี้

ล้างโฟลเดอร์ ~/Library/Metadata/Corespotlight (แก้ด่วน)

Corespotlightd เป็นกระบวนการหลักที่จัดการข้อมูลดัชนีค้นหาผ่านเฟรมเวิร์ก Core Spotlight

เราพบว่าเมื่อกระบวนการ corespotlightd ใช้ CPU สูงใน Activity Monitor ขนาดของโฟลเดอร์ Corespotlight ก็ใหญ่ไปด้วย โฟลเดอร์ Corespotlight จัดเก็บข้อมูลเมตาของ Spotlight สำหรับรายการที่ถูกดัชนีโดยแอปที่ใช้เฟรมเวิร์ก Core Spotlight เช่น Mail, Notes, Messages ฯลฯ

การล้างข้อมูลเมตาที่เพิ่มเข้ามาอัตโนมัติในโฟลเดอร์ Corespotlight เป็นวิธีแก้ด่วนที่เกือบทันทีเพื่อลด CPU corespotlightd ที่โหลดเกิน และเพิ่มประสิทธิภาพ Mac อย่างรวดเร็ว

หมายเหตุ: แค่ลบเนื้อหาภายในโฟลเดอร์ Corespotlight และโฟลเดอร์ย่อย SpotlightKnowledgeEvents ไม่ใช่ลบโฟลเดอร์เอง

หลังจากนั้น คุณจะพบว่า CPU และการใช้หน่วยความจำของกระบวนการ corespotlightd ใน Activity Monitor ลดลงมาก

หากปัญหาของคุณแก้ไขแล้ว บอกวิธีแก้ให้ผู้คนมากขึ้น

ป้องกัน Spotlight ไม่ให้ดัชนีดิสก์สำรอง Time Machine (แก้ถาวร)

การดัชนี Spotlight ถูกกระตุ้นหลังแต่ละเซสชันสำรอง Time Machine หากคุณเปิดการสำรอง Time Machine อัตโนมัติ Spotlight จะดัชนีดิสก์หลังจากการสำรองแต่ละครั้งเสร็จสิ้น นี่เพิ่มภาระของกระบวนการที่เกี่ยวกับการดัชนี Spotlight เช่น corespotlightd และก่อให้เกิดปัญหา corespotlightd CPU overload ที่ต่อเนื่อง

ดังนั้น ให้หยุด Spotlight ไม่ให้ดัชนีดิสก์สำรอง Time Machine แทนที่จะ reindex Spotlight โดยการเพิ่มและลบโวลยูมใน Spotlight Privacy เนื่องจาก Spotlight ต้องการดัชนีไดรฟ์เหล่านี้เสมอ

เพื่อป้องกัน Spotlight ไม่ให้ดัชนีดิสก์สำรอง Time Machine ให้ปฏิบัติตาม:

ล้างแคชระบบ

ผู้ใช้หลายรายรายงานว่า corespotlightd ใช้ CPU มากกว่า 100% หลังอัปเกรดจาก macOS 15.2 เป็น macOS 15.5 นั่นเพราะการอัปเกรด macOS ทั่วไปสร้างแคชระบบและไฟล์ชั่วคราวจำนวนมาก

หากแคชระบบใดๆ เสียหาย อาจทำให้กระบวนการที่เกี่ยวกับ Spotlight เช่น corespotlightd ค้างหรือช้าลง ทำให้ใช้ทรัพยากร CPU มากเกินไปโดยธรรมชาติ

ดังนั้น เราขอแนะนำให้ล้างแคชระบบเป็นประจำ โดยเฉพาะหลังอัปเดต macOS ไฟล์แคชระบบกระจายอยู่ในโฟลเดอร์ ~/Library/Caches, /System/Library/Caches, และ /Library/Caches คุณสามารถใช้ Finder > Go > Go to Folder เพื่อหาและลบเนื้อหาในพวกมัน

จริงๆ แล้ว Mac ของคุณกระจายไฟล์ขยะหลากหลายประเภทที่จะทำให้ Mac ช้า คุณสามารถใช้ Mac cleaner อย่าง iBoysoft DiskGeeker เพื่อเพิ่มประสิทธิภาพ Mac เครื่องมือนี้ช่วยค้นหา user cache files, ถังขยะ, user log files, และไฟล์ขยะอื่นๆ บน Mac สำหรับการลบในคลิกเดียว ทำให้ Mac อยู่ในประสิทธิภาพที่ดีที่สุดเสมอ

หลังจากนั้น ตรวจสอบว่า corespotlightd high CPU usage ยังคงอยู่บน macOS Sequoia หรือไม่

แชร์ Mac cleaner นี้ให้ผู้อื่น เพื่อให้ผู้คนมากขึ้นได้ประสบประสิทธิภาพที่ดีขึ้นกับ Mac ของพวกเขา

Force quit กระบวนการ Spotlight ทั้งหมด & ลบไฟล์ Spotlight .plist

บางผู้ใช้กล่าวว่าการ kill corespotlightd ใน Activity Monitor ไม่เปลี่ยนแปลงอะไร สำคัญคือ ไม่ได้แค่กระบวนการ corespotlightd แต่ mds, mdworker, และ mds_stores ก็เกี่ยวข้องกับการค้นหา Spotlight ด้วย

แก้ปัญหา corespotlightd CPU สูงบน macOS Sequoia: วิธีแก้ที่พิสูจน์แล้ว

คุณควร force quit กระบวนการ Spotlight ทั้งหมดเหล่านี้ และลบไฟล์ Spotlight .plist เพื่อรีเฟรช Spotlight นี่คือการช่วยชีวิตสำหรับการลดการใช้ CPU corespotlightd ที่มากเกินไปอย่างต่อเนื่อง

วิธีทำ:

  1. เปิด Activity Monitor และ force quit corespotlightd, mds, mdworker, และ md_stores ทีละตัว
  2. เปิด Finder ไปที่แถบเมนูด้านบน และคลิก Go > Go to Folder
  3. ใส่ ~/Library/Preferences/com.apple.Spotlight.plist เพื่อหาไฟล์ Spotlight .plist
  4. ย้ายไฟล์ไปถังขยะ

หลังจากรีสตาร์ทหรือล็อกอินเข้าสู่ Mac ใหม่ Spotlight จะถูกรีเฟรช การใช้ CPU ของ corespotlightd ก็จะลดลง

ปิด Pages หรือแอปพลิเคชันที่น่าสงสัยอื่นๆ

เราทดสอบและพบว่า corespotlightd CPU สูงเมื่อใช้ Spotlight ค้นหาเอกสาร Pages ขนาดใหญ่

ความจริงคือ กระบวนการ mdworker ต่างๆ เขียนข้อมูลจำนวนมากเข้าโฟลเดอร์ข้อมูลเมตา corespotlight เมื่อ Spotlight ดัชนีไฟล์ Pages บางไฟล์

เราคิดว่ามีบั๊กในวิธีที่ Spotlight จัดการเอกสาร Pages ขนาดใหญ่ ดังนั้น คุณสามารถลองปิด Pages และรอสักครู่เพื่อตรวจสอบว่า corespotlightd CPU usage ลดลงหรือไม่

當然 Pages ไม่ใช่ผู้ทำลายเพียงตัวเดียว หาก corespotlightd CPU high usage เกิดขึ้นหลังรันแอปอื่น ให้ปิดมันไป

ปิด Spotlight index แล้วเปิดใหม่

การเปิดใช้งาน Spotlight index ใหม่มีประโยชน์ในการลดการใช้ CPU หรือแก้ไขข้อผิดพลาด หากคุณลองวิธีนี้แต่ไม่สำเร็จ ข้ามไป หากยังไม่ได้ลอง วิธีนี้ก็อาจเป็นเคล็ดลับ เพราะบางผู้ใช้แก้ high CPU usage ของ corespotlightd ด้วยวิธีนี้

  1. เปิด Terminal จาก Launchpad > Other
  2. ใส่คำสั่งด้านล่าง นี่คือการปิด Spotlight index บนโวลยูมระบบหลัก sudo mdutil -i off /
  3. ใส่รหัสผ่านแอดมินหากถาม
  4. รอสักครู่ แล้วใส่คำสั่งต่อไปนี้เพื่อเปิดใหม่ sudo mdutil -i on /

ลบ Spotlight index

การลบ Spotlight index จะล้างข้อมูลดัชนีปัจจุบันที่ Spotlight ใช้ค้นหาไฟล์ แต่ macOS จะสร้างดัชนีใหม่อัตโนมัติหลังจากนั้น

นี่สามารถล้างข้อมูลการดัชนีขนาดใหญ่ที่ทำให้เกิด ปัญหา corespotlightd CPU overload ที่ต่อเนื่อง

  1. เปิด Terminal จาก Launchpad > Other
  2. ใส่คำสั่งด้านล่างในหน้าต่าง Terminal sudo mdutil -E /

หากโพสต์นี้ช่วยคุณแก้ corespotlightd high CPU บน macOS Sequoia แชร์ให้ผู้คนมากขึ้น