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

วิธีลบไฟล์ Memory Dump ของข้อผิดพลาดระบบ (System Error Memory Dump Files)

เมื่อระบบของคุณเกิดข้อผิดพลาดร้ายแรง (เช่น จอสีน้ำเงินหรือ BSOD) Windows จะเก็บสำเนาข้อมูลในหน่วยความจำ (RAM) ณ เวลาที่เกิดการหยุดทำงานไว้ เพื่อช่วยในการวินิจฉัยสาเหตุของปัญหา มีหลายประเภทของ Memory Dump ที่คอมพิวเตอร์สร้างขึ้นเพื่อช่วยในกระบวนการแก้ไขบั๊ก:

ประเภทของ Memory Dump

  • Complete Memory Dump: เป็นประเภทที่ใหญ่ที่สุด มีขนาดเท่ากับข้อมูลทั้งหมดที่ Windows ใช้ในหน่วยความจำทางกายภาพ (Physical Memory) เช่น หากคุณมี RAM 8 GB และ Windows ใช้ 4 GB ขนาดไฟล์ Dump จะเป็น 4 GB
  • Small Memory Dump (256 KB): เป็นขนาดเล็กที่สุด มีข้อมูลน้อยมาก แต่ช่วยระบุข้อผิดพลาดได้ และมีประโยชน์ในการดีบัก
  • Kernel Memory Dump: มีขนาดประมาณ 1/3 ของหน่วยความจำทางกายภาพ ประกอบด้วยหน่วยความจำที่จัดสรรให้ Kernel ของ Windows และ Hardware Abstraction Layer รวมถึง Driver และโปรแกรมที่ทำงานใน Kernel Mode
  • Automatic Memory Dump: มีขนาดเท่ากับ Kernel Memory Dump แต่ Windows จะจัดการขนาดไฟล์อัตโนมัติ

Windows บันทึกไฟล์ Memory Dump ทั้งหมดนี้ไว้ในไดรฟ์ C ภายใต้ชื่อ "System Error Memory Dump Files" สามารถใช้โปรแกรม Disk Cleanup ลบไฟล์เหล่านี้เพื่อ騰พื้นที่จัดเก็บได้ ไฟล์ Dump อาจสะสมเป็นเวลานานและมีขนาดใหญ่ถึง 100 GB อย่างไรก็ตาม ผู้ใช้หลายคนรายงานว่า Disk Cleanup ไม่สามารถลบไฟล์ที่ต้องการได้

วิธีแก้ปัญหา

มีหลายวิธีในการแก้ไขปัญหานี้ วิธีหนึ่งคือการใช้ Disk Cleanup ด้วยสิทธิ์ผู้ดูแลระบบ (Elevated) หรือรันคำสั่งผ่าน Command Prompt ตามวิธีแก้ไขด้านล่างนี้:

วิธีที่ 1: ใช้ Elevated Disk Cleanup (Disk Cleanup ด้วยสิทธิ์ Admin)

ลองใช้ Disk Cleanup แบบ Elevated เพื่อล้าง Memory Dump หากไฟล์ Dump กำลังถูกวิเคราะห์หรือรอการดำเนินการ อาจไม่สามารถลบได้ด้วย Disk Cleanup ธรรมดา

  1. กด Windows + S เปิดช่องค้นหา พิมพ์ "disk cleanup"
  2. คลิกขวาที่ผลลัพธ์ แล้วเลือก "Run as administrator"
  3. เลือกไดรฟ์ที่ต้องการล้าง (ปกติคือ Local Disk C) แล้วกด OK
  4. Windows จะสแกนไฟล์และคำนวณพื้นที่ที่สามารถลบได้
  5. ติ๊กถูกทุกช่อง ที่ต้องการลบ แล้วกด OK Windows จะลบไฟล์และเพิ่มพื้นที่ว่าง ให้ตรวจสอบอีกครั้งว่าแก้ไขได้หรือไม่

หมายเหตุ: บางคนพบว่า Elevated Cleanup และ Normal Cleanup แสดงขนาดไฟล์ System Error Memory Dump ต่างกัน หาก Elevated แสดงขนาดใหญ่กว่า ไม่ต้องกังวล สามารถลบได้โดยไม่มีผลกระทบ

วิธีที่ 2: ใช้ Extended Disk Cleanup

Extended Disk Cleanup มีตัวเลือกมากกว่าปกติ และแสดงรายละเอียดเพิ่มเติม (เช่นเวอร์ชัน Windows เก่า) ต้องใช้บัญชี Administrator และสิทธิ์ Admin

  1. กด Windows + S ค้นหา "command prompt" คลิกขวาเลือก "Run as administrator"
  2. ใน Command Prompt ใส่คำสั่งด้านล่างและกด Enter:
    cmd.exe /c Cleanmgr /sageset:65535 & Cleanmgr /sagerun:65535
  3. จะปรากฏตัวเลือกมากกว่าปกติ เลือกสิ่งที่ต้องการลบ แล้วกด OK
  4. รีสตาร์ทคอมพิวเตอร์ และตรวจสอบผลลัพธ์

วิธีที่ 3: ลบไฟล์ Dump ด้วยตนเอง (Manual Delete)

หากวิธีข้างต้นไม่ได้ผล ลองลบไฟล์ด้วยตนเอง โดยตรวจสอบตำแหน่งเก็บไฟล์ก่อน

  1. กด Windows + R พิมพ์ "control panel" กด Enter
  2. เลือก "System and Security"
  3. หา "System" แล้วคลิก
  4. คลิก "Advanced system settings" ด้านซ้าย
  5. ในแท็บ Startup and Recovery คลิก "Settings"
  6. ในช่อง "Dump file" จะแสดงตำแหน่งเก็บไฟล์ (ปกติคือ %SystemRoot%\MEMORY.DMP) คัดลอกพาธนี้ (ลบชื่อไฟล์ทิ้ง)
  7. กด Windows + R วางพาธที่คัดลอก แล้วกด Enter
  8. ค้นหาไฟล์ MEMORY.DMP และลบ (อาจต้องการสิทธิ์ Admin)

รีสตาร์ท คอมพิวเตอร์ และตรวจสอบว่าปัญหาแก้ไขแล้วหรือไม่

วิธีที่ 4: ปิดการ Indexing ในไดรฟ์ C

Indexing เป็นบริการที่สร้างดัชนีไฟล์เพื่อการค้นหาเร็วขึ้น แต่บางครั้งกินพื้นที่มาก และอาจทำให้ Disk Cleanup ลบไฟล์ Dump ไม่ได้ วิธีนี้ช่วยหากพื้นที่ถูกครอบครองโดยวัตถุ "Unknown"

  1. เปิด File Explorer ไปที่ "This PC" คลิกขวาที่ Local Disk C เลือก Properties
  2. ยกเลิกติ๊ก "Allow files on this drive to have contents indexed in addition to file properties" กด Apply
  3. รีสตาร์ท คอมพิวเตอร์ และตรวจสอบ

วิธีที่ 5: ใช้ WinDirStat วิเคราะห์การใช้พื้นที่

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

หมายเหตุ: ไม่มีส่วนเกี่ยวข้องกับโปรแกรมภายนอก ใช้เฉพาะประโยชน์ผู้ใช้ ติดตั้งและใช้ด้วยความเสี่ยงของตัวเอง

  1. เปิด WinDirStat เลือกไดรฟ์ทั้งหมดให้สแกน
  2. รอการวิเคราะห์เสร็จ (อาจใช้หลายนาที)
  3. มองหาไฟล์ Dump ใน Local Disk C (จะแสดงเป็นบล็อกสีใหญ่) คลิกขวาเลือก "Delete (no way to undelete!)"
  4. รีสตาร์ท และตรวจสอบ

เตือน: ระวังการลบไฟล์ที่ไม่รู้จัก อาจลบไฟล์ระบบทำให้ PC ใช้งานไม่ได้ ในที่นี้ลบเฉพาะไฟล์ DUMP ที่ไม่มีประโยชน์

วิธีที่ 6: รันคำสั่งใน Command Prompt (สำรองสุดท้าย)

ลองรันคำสั่งต่อไปนี้ใน Elevated Command Prompt ต้องมีสิทธิ์ Admin

  1. เปิด Command Prompt แบบ Admin (Windows + S → command prompt → Run as administrator)
  2. คัดลอกคำสั่งต่อไปนี้ทีละบรรทัด แล้วกด Enter ทุกครั้ง:
    fsutil usn deletejournal /d /n c:
    chkdsk /scan
    compact /CompactOs:never
    winmgmt /salvagerepository
    del "%temp%\*" /s /f /q
    del "C:\$Recycle.bin\*" /s /f /q
    del "%systemroot%\temp\*" /s /f /q
    vssadmin delete shadows /for=c: /all /quiet
    Dism /Online /Cleanup-Image /StartComponentCleanup /ResetBase
  3. รีสตาร์ทคอมพิวเตอร์ และตรวจสอบผลลัพธ์