- กระบวนการบูตของ Windows แบ่งออกเป็นหลายขั้นตอน (PreBoot, Boot Manager, OS Loader และ Kernel) และแต่ละขั้นตอนจะแสดงอาการที่แตกต่างกันเมื่อเกิดความล้มเหลว
- เครื่องมือต่างๆ เช่น Startup Repair, BOOTREC, BCDEDIT และ RegBack ช่วยให้คุณสามารถซ่อมแซม MBR, บูตเซกเตอร์, BCD และรีจิสทรีฮิฟที่เสียหายได้
- ไฟล์บันทึกการบูต Ntbtlog.txt จะถูกเปิดใช้งานโดยไฟล์ boot.ini หรือ BCDEDIT และจะบันทึกไดรเวอร์ที่โหลดและข้ามไป ซึ่งเป็นกุญแจสำคัญในการวินิจฉัยความล้มเหลว
- การรวมบันทึกการบูต, โปรแกรมดูเหตุการณ์, SFC/DISM และไฟล์ดัมพ์หน่วยความจำเข้าด้วยกัน จะช่วยให้ค้นหาไดรเวอร์หรือการอัปเดตที่ขัดขวางการบูตของ Windows ได้ง่ายขึ้น
เมื่อ Windows ไม่ยอมบูตและค้างอยู่ที่หน้าจอสีดำ วนลูปการรีสตาร์ท หรือหน้าจอสีฟ้าปฏิกิริยาปกติคือการตกใจ แต่เหนือกว่าเครื่องมืออัตโนมัติทั่วไปแล้ว ยังมีแหล่งข้อมูลที่มีประสิทธิภาพมากในการทำความเข้าใจสิ่งที่เกิดขึ้น นั่นคือไฟล์บันทึกการบูตหรือ บันทึกการบูตโดยเฉพาะอย่างยิ่งที่เป็นที่รู้จักกันดี Ntbtlog.txt.
บันทึกเหล่านี้แสดงรายละเอียดว่าไดรเวอร์และส่วนประกอบใดบ้างที่โหลด (หรือโหลดไม่สำเร็จ) ในระหว่างการเริ่มต้นระบบและเมื่อใช้ร่วมกับยูทิลิตี้อื่นๆ เช่น Startup Repair BOOTREC, DISM หรือรีจิสทรีของ Windows เอง ช่วยให้คุณสามารถแก้ไขปัญหาการบูตหลายอย่างที่ต้นเหตุได้ ทั้งในคอมพิวเตอร์ที่มี BIOS แบบคลาสสิกและในระบบสมัยใหม่ที่มี UEFI (กระบวนการบูตใน UEFI).
ระบบ Windows เริ่มต้นทำงานอย่างไร และเกิดความล้มเหลวในขั้นตอนใด?
ก่อนที่คุณจะเริ่มรีวิว Ntbtlog.txt เพื่อวางคำสั่งลงในคอนโซลสิ่งสำคัญคือต้องเข้าใจว่ากระบวนการบูตของ Windows นั้นจัดเรียงอย่างไร และส่วนประกอบใดบ้างที่ถูกเปิดใช้งานในแต่ละขั้นตอน สิ่งนี้จะช่วยให้คุณสามารถระบุได้ว่าข้อผิดพลาดเกิดขึ้นตั้งแต่ช่วงแรกๆ (เฟิร์มแวร์/BIOS) ในตัวจัดการการบูต ในตัวโหลดระบบปฏิบัติการ หรือเมื่อเคอร์เนลของ Windows เริ่มทำงาน
โดยทั่วไปแล้ว วงจรการเริ่มต้นระบบของระบบปฏิบัติการ Windows สมัยใหม่จะแบ่งออกเป็นสี่ขั้นตอนหลัก ปัญหาเหล่านี้เกิดขึ้นได้ทั้งในเครื่องที่ใช้ BIOS รุ่นเก่าและระบบเฟิร์มแวร์ UEFI แม้ว่าไฟล์ที่เกี่ยวข้องและเส้นทางจะแตกต่างกันเล็กน้อย:
- ขั้นตอนที่ 1 – ก่อนเริ่มระบบเฟิร์มแวร์ (BIOS หรือ UEFI) จะทำการทดสอบตัวเองเมื่อเปิดเครื่อง (POST) เพื่อเริ่มต้นการทำงานของฮาร์ดแวร์พื้นฐาน และค้นหาดิสก์ระบบที่ใช้งานได้ ในเครื่องที่ใช้ BIOS จะอ่าน MBR/PBR ส่วนในเครื่องที่ใช้ UEFI จะโหลดเฟิร์มแวร์และค้นหาแอปพลิเคชัน EFI ซึ่งเป็นตัวจัดการการบูตของ Windows
- ขั้นตอนที่ 2 – ตัวจัดการการบูตของ Windows: ในขั้นตอนนี้ ตัวจัดการการบูตจะเข้ามามีบทบาท โดยจะตรวจสอบการตั้งค่าการบูตและตัดสินใจว่าจะเริ่มต้นระบบใด
- ขั้นตอนที่ 3 – ตัวโหลดระบบปฏิบัติการ Windows: เครื่องชาร์จระบบ (
winload.exeowinload.efi) โหลดเคอร์เนลและไดรเวอร์ที่ถูกกำหนดให้โหลดเมื่อบูตเครื่อง - ขั้นตอนที่ 4 – เคอร์เนลของ Windows NT: เคอร์เนล (
ntoskrnl.exe) เข้าควบคุม, ติดตั้งรีจิสทรีของระบบ, โหลดไดรเวอร์BOOT_STARTและเซสชันระบบเริ่มต้นขึ้น (Smss.exeซึ่งจะทำการเรียกใช้บริการและตัวควบคุมที่เหลือต่อไป
แต่ละขั้นตอนจะมีอาการและข้อความแสดงข้อผิดพลาดที่เป็นลักษณะเฉพาะตั้งแต่ข้อความแจ้งเตือนทั่วไปอย่าง “Bootmgr หายไป” ไปจนถึงข้อผิดพลาดอื่นๆ เช่น INACCESSIBLE_BOOT_DEVICE หรืออาจเกิดหน้าจอสีฟ้าขึ้นทันทีหลังจากโลโก้ Windows ซึ่งจึงต้องวินิจฉัยและแก้ไขด้วยเครื่องมือต่างๆ
| ระยะ | เวที | อุปกรณ์ที่มี BIOS | อุปกรณ์ที่เปิดใช้งาน UEFI |
|---|---|---|---|
| 1 | preboot | MBR/PBR (รหัสบูต) | เฟิร์มแวร์ UEFI |
| 2 | ตัวจัดการการบูตของ Windows | %SystemDrive%\ตัวจัดการบูต | \EFI\Microsoft\Boot\bootmgfw.efi |
| 3 | โปรแกรมโหลดระบบปฏิบัติการ Windows | %SystemRoot%\System32\winload.exe | %SystemRoot%\System32\winload.efi |
| 4 | เคอร์เนล Windows NT | %SystemRoot%\System32\ntoskrnl.exe | (เช่นเดียวกัน แต่ตอนนี้อยู่ภายใต้ UEFI) |
เป้าหมายในการวินิจฉัยปัญหาการสตาร์ทเครื่องยนต์คือการ "จับ" จุดที่กระบวนการหยุดชะงักจากนั้น เราสามารถตัดสินใจได้ว่าควรตรวจสอบไฟล์บันทึกการบูต ไฟล์ SrtTrail.txt จากการซ่อมแซมการเริ่มต้นระบบ ข้อมูลหน่วยความจำ รีจิสทรี หรือมุ่งเน้นไปที่รหัสการบูต (MBR, BCD, Bootmgr ฯลฯ)
ความผิดพลาดของ BIOS หรือเฟิร์มแวร์: วิธีตรวจจับความผิดพลาดเหล่านี้
หากคอมพิวเตอร์ไม่แสดงแม้แต่โลโก้ Windows หากเครื่องค้างอยู่ที่หน้าจอสีดำโดยไม่มีข้อความใดๆ แสดง หรือเปิดเครื่องไม่ขึ้นเลย ปัญหามักจะอยู่ที่เฟิร์มแวร์หรือฮาร์ดแวร์พื้นฐานเอง
มีวิธีตรวจสอบง่ายๆ สองสามวิธีที่จะช่วยระบุว่าระบบผ่านขั้นตอน BIOS แล้วหรือไม่ หรือมันติดอยู่ที่นั่น:
- ถอดอุปกรณ์ต่อพ่วงภายนอกทั้งหมดออก (USB, ฮาร์ดไดรฟ์ภายนอก, เครื่องพิมพ์…) บางครั้งเฟิร์มแวร์พยายามบูตจากอุปกรณ์แบบถอดได้และเกิดอาการค้าง
- สังเกตไฟ LED แสดงสถานะการทำงานของฮาร์ดไดรฟ์หากไฟแสดงสถานะไม่กะพริบเลยระหว่างการเปิดเครื่อง กระบวนการอาจไม่ถึงขั้นตอนการอ่านบูตเซกเตอร์
- ลองกดปุ่ม Num Lock ดูหากไฟแสดงสถานะบนแป้นพิมพ์ไม่เปลี่ยนแปลง โดยปกติแล้วจะบ่งชี้ว่าระบบหยุดทำงานโดยสมบูรณ์ในระดับเฟิร์มแวร์หรือเมนบอร์ด
เมื่อเกิดอาการค้างในระยะเริ่มต้นเช่นนี้ โดยปกติแล้วมักเกิดจากความผิดพลาดของฮาร์ดแวร์ (หน่วยความจำ, เมนบอร์ด, แหล่งจ่ายไฟ, ฮาร์ดไดรฟ์เสีย…) และไม่ค่อยเกี่ยวข้องกับปัญหาไฟล์บูต ดังนั้นในกรณีเหล่านี้ การวิเคราะห์จึงมีความสำคัญ Ntbtlog.txt และสิ่งต่างๆ ที่คล้ายกันนั้นก็ไม่ถูกสร้างขึ้นมาด้วยซ้ำ
ข้อผิดพลาดในตัวจัดการบูตและตัวโหลด (MBR, BCD, Bootmgr)
หากเครื่องเปิดติด โลโก้ของผู้ผลิตจะปรากฏขึ้น จากนั้นคุณจะเห็นหน้าจอสีดำพร้อมเคอร์เซอร์ที่กระพริบ หากคุณได้รับข้อความเช่น “ระบบปฏิบัติการหายไป”, “Bootmgr หายไป” หรือข้อผิดพลาดที่เกี่ยวข้องกับ BCD แสดงว่าปัญหาอยู่ที่ขั้นตอนการจัดการบูต (Boot Manager / Boot Loader) แล้ว
ข้อความทั่วไปบางส่วนจากขั้นตอนนี้ทำให้เห็นสถานการณ์ได้อย่างชัดเจน:
Boot Configuration Data (BCD) missing or corruptedBoot file or MBR corruptedOperating system missingBoot sector missing or corruptedBootmgr missing or corruptedUnable to boot due to system hive missing or corrupted
ในขั้นตอนนี้ วิธีที่มีประสิทธิภาพที่สุดคือการบูตระบบจากสื่อติดตั้ง Windows ภายนอก (สร้าง USB/DVD ด้วยเครื่องมือของ Microsoft หรือไฟล์ ISO เวอร์ชันเดียวกันหรือสูงกว่า) แล้วเปิดพรอมต์คำสั่งโดยใช้ปุ่ม Shift+F10 หรือผ่านตัวเลือกการกู้คืนขั้นสูง
การใช้เครื่องมือซ่อมแซมการเริ่มต้นระบบ
โปรแกรมซ่อมแซมการเริ่มต้นระบบของ Windows เป็นตัวเลือกแรกที่คุณควรลองใช้เนื่องจากมันทำการตรวจสอบหลายอย่างโดยอัตโนมัติ เช่น ตรวจสอบความสมบูรณ์ของไฟล์บูต พยายามแก้ไข BCD ซ่อมแซมเซกเตอร์บูตที่เสียหาย และสร้างบันทึกการทำงานของมันเอง
ขั้นตอนการใช้งานนั้นง่ายมาก เมื่อคุณบูตเครื่องจากสื่อการติดตั้งของ Windows เวอร์ชันเดียวกันกับที่คุณติดตั้งไว้:
- บูตเครื่องคอมพิวเตอร์ของคุณจาก USB/DVD สำหรับติดตั้ง Windows และในหน้าต่างเริ่มต้น ให้คลิกที่ ถัดไป > ซ่อมแซมอุปกรณ์.
- ในหน้าจอเลือก ให้ป้อน แก้ไขปัญหา.
- เข้าสู่ ตัวเลือกขั้นสูง > การซ่อมแซมการเริ่มต้นระบบ และปล่อยให้เครื่องมือวิเคราะห์ระบบ
- เมื่อเสร็จสิ้นแล้ว ให้ปิดเครื่องโดยใช้ตัวช่วยปิดเครื่อง และลองเปิดเครื่องตามปกติอีกครั้ง
ทุกสิ่งที่เครื่องมือนี้ทำจะถูกบันทึกไว้ในไฟล์ SrtTrail.txtตั้งอยู่ใน %windir%\System32\LogFiles\Srt\Srttrail.txtถึงแม้ว่ามันจะไม่ใช่บันทึกการบูตในรูปแบบทั่วไปก็ตาม Ntbtlog.txtใช่แล้ว การเข้าใจว่าระบบตรวจพบอะไรและพยายามดำเนินการอย่างไรบ้างนั้นเป็นสิ่งที่มีประโยชน์
ซ่อมแซม MBR และบูตเซกเตอร์ด้วย BOOTREC
หาก Startup Repair ไม่สามารถแก้ไขปัญหาได้ ขั้นตอนต่อไปที่นิยมใช้กันคือการใช้เครื่องมือดังกล่าว BOOTREC (ดู คู่มือ BOOTREC) จากพรอมต์คำสั่งของสภาพแวดล้อมการกู้คืน ยูทิลิตีนี้ช่วยให้คุณสามารถเขียน MBR ใหม่ สร้างเซกเตอร์บูตใหม่ และสร้างฐานข้อมูล BCD ใหม่ได้
คำสั่งพื้นฐานสำหรับการแก้ไขปัญหาทั่วไปเกี่ยวกับ MBR และบูตเซกเตอร์ พวกเขามีดังนี้:
- เขียน MBR ใหม่ (มีประโยชน์มากหากระบบอื่นหรือเครื่องมือของบุคคลที่สามได้เขียนทับไฟล์นี้ไปแล้ว):
bootrec /fixmbr - ซ่อมแซมเซกเตอร์บูตของพาร์ติชั่นระบบ:
bootrec /fixboot
ในบางสถานการณ์ (โดยเฉพาะในระบบ UEFI ที่มีการแบ่งพาร์ติชั่น EFI ในรูปแบบ FAT32) ข้อความ "การเข้าถึงถูกปฏิเสธ" ที่น่ากลัวอาจปรากฏขึ้นเมื่อเรียกใช้งาน /fixbootในกรณีเหล่านี้ คุณต้องตรวจสอบว่าพาร์ติชั่นระบบได้รับการกำหนดตัวอักษรไดรฟ์อย่างถูกต้องหรือไม่ และบางครั้งอาจต้องทำเครื่องหมายว่าเป็นพาร์ติชั่นที่ใช้งานอยู่ หรือซ่อมแซมไฟล์บูตด้วยตนเองโดยการคัดลอกไฟล์เหล่านั้น bootmgr และเนื้อหาของ \EFI\Microsoft\Boot.
แก้ไขข้อผิดพลาดของคลังสินค้า BCD
เมื่อ BCD เสียหายหรือชี้ไปยังสิ่งอำนวยความสะดวกที่ไม่มีอยู่จริงคุณจะเห็นข้อผิดพลาดที่เฉพาะเจาะจงมากขึ้นเกี่ยวกับ "ข้อมูลการกำหนดค่าการบูต" ในส่วนนี้ BOOTREC และ BCDEDIT จะทำงานร่วมกัน (ดูเพิ่มเติม) การวินิจฉัยด้วย BCDEDIT).
ขั้นตอนทั่วไปในการสร้าง BCD ขึ้นใหม่ตั้งแต่เริ่มต้น นี่คือ:
- สแกนหาการติดตั้ง Windows ที่ตรวจพบ:
bootrec /scanos - หากหลังจากสแกนแล้วเครื่องยังไม่สามารถเริ่มต้นได้ ให้สำรองข้อมูล BCD แล้วสร้างใหม่:
bcdedit /export C:\bcdbackupattrib C:\boot\bcd -r -s -hren C:\boot\bcd bcd.oldbootrec /rebuildbcd - เมื่อระบบถามว่าคุณต้องการเพิ่มโปรแกรมที่ติดตั้งที่พบลงในรายการบูตหรือไม่ ให้ตอบว่าใช่
ในบางกรณี อาจมีข้อความแสดงข้อผิดพลาดปรากฏขึ้นว่า "ไม่พบอุปกรณ์ระบบที่ร้องขอ" เมื่อพยายามเพิ่มการติดตั้ง คุณต้องตรวจสอบตรงนั้นด้วย diskpart ตรวจสอบว่าพาร์ติชั่นระบบได้รับการทำเครื่องหมายอย่างถูกต้อง มีการกำหนดตัวอักษร และไม่มีความเสียหาย
แทนที่ไฟล์ Bootmgr
หากหลังจากพยายามหลายครั้งแล้ว ข้อผิดพลาดชี้ไปที่... bootmgr ความบกพร่องคุณสามารถเลือกที่จะเปลี่ยนชื่อไฟล์ที่มีปัญหา แล้ววางไฟล์ใหม่จากพาร์ติชั่นที่สงวนไว้ของระบบ หรือจากสื่อการติดตั้งก็ได้
โดยทั่วไปแล้ว แนวคิดก็คือให้ทิ้งของเก่าไป bootmgr ปลอดภัยและคัดลอกไฟล์ที่ใช้งานได้ ไปยังพาร์ติชันที่ระบบตั้งอยู่:
- ระบุพาร์ติชัน System Reserved (โดยปกติจะไม่มีตัวอักษร ในระบบไฟล์ FAT32 หรือ NTFS ขนาดประมาณ 100 MB ใน Windows รุ่นใหม่ๆ) และกำหนดตัวอักษรให้กับพาร์ติชันนั้น
diskpartถ้าจำเป็น - ในพาร์ติชั่นนั้น ให้แสดงรายการไฟล์ที่ซ่อนอยู่และไฟล์ระบบด้วยคำสั่ง:
attrib -r -s -h - ทำเช่นเดียวกันกับไดรฟ์ระบบ (ตัวอย่างเช่น
C:) เพื่อดูbootmgrที่มีอยู่ - เปลี่ยนชื่อของ
bootmgrตัวอย่างเช่น เสียหาย:ren C:\bootmgr bootmgr.old - คัดลอก
bootmgr"ปกติ" ตั้งแต่พาร์ติชั่นที่สงวนไว้สำหรับระบบไปจนถึงรูทของไดรฟ์ Windows - รีสตาร์ทเครื่องแล้วตรวจสอบดูว่าเครื่องเปิดติดหรือไม่
กู้คืนโครงสร้างย่อยของรีจิสทรีระบบ
เมื่อเกิดข้อผิดพลาดที่ระบุว่าไม่สามารถโหลดระบบฮิฟได้ หากพบข้อความว่า (system hive missing or corrupted) ปัญหาจะเปลี่ยนจากปัญหาที่เกี่ยวข้องกับการบูตเครื่องไปเป็นปัญหาเกี่ยวกับรีจิสทรี ในกรณีเหล่านี้ โดยปกติแล้วจำเป็นต้องกู้คืนรีจิสทรีจากข้อมูลสำรองที่ถูกต้อง (คุณสามารถดูเทคนิคต่างๆ ได้ที่นี่) ปรับปรุงรีจิสทรีด้วย RegScanner).
จากสภาพแวดล้อมการกู้คืน WinRE หรือดิสก์ซ่อมแซม ERD คุณสามารถคัดลอกเนื้อหาของ C:\Windows\System32\config\RegBack a C:\Windows\System32\configโดยการเขียนทับไฟล์ที่เสียหาย (SYSTEM, SOFTWARE ฯลฯ) หากยังคงไม่สามารถบูตได้ คุณจะต้องกู้คืนข้อมูลสำรองระบบทั้งหมด จากนั้นกู้คืนเฉพาะส่วนที่จำเป็นเท่านั้น
ขั้นตอนการทำงานของระบบ: หน้าจอสีฟ้า, การวนลูป และการหยุดทำงานหลังจากโลโก้
หากคุณเห็นโลโก้ Windows แล้ว แม้แต่ไอคอน "วงล้อ" ที่หมุนอยู่ซึ่งประกอบด้วยจุดต่างๆ ก็เช่นกันแต่ถ้าหากจู่ๆ หน้าจอกลายเป็นสีฟ้า เครื่องค้าง หรือหน้าจอกลายเป็นสีดำ ปัญหาที่เกิดขึ้นมักจะอยู่ที่ส่วนของเคอร์เนลหรือไดรเวอร์ที่โหลดอยู่ในขั้นตอนนั้น
อาการทั่วไปบางประการของความล้มเหลวในระยะนี้เป็นที่รู้จักกันดี:
- หยุดการทำงานของโค้ดทันทีหลังจากหน้าจอสแปลช (ตัวอย่างเช่น
0x00000C2,0x0000007Bฯลฯ ) - ข้อผิดพลาดของ
INACCESSIBLE_BOOT_DEVICEโดยมีรหัสหยุดทำงาน 0x7B ซึ่งบ่งชี้ว่ามีปัญหาในการเข้าถึงดิสก์บูต - วงล้อจุดหมุนจะคงอยู่ในสถานะ "ระบบกำลังทำงาน" อย่างไม่มีกำหนด
- หน้าจอจะมืดลงหลังจากโลโก้ Windows ปรากฏขึ้น โดยไม่มีข้อความใดๆ แสดงขึ้นมา
ในสถานการณ์เหล่านี้ ทางเลือกในการฟื้นฟูจะขึ้นอยู่กับการเริ่มต้นอย่างจำกัด จากนั้นจึงทำการวินิจฉัยโดยใช้เครื่องมือต่างๆ เช่น Event Viewer, บันทึกการบูต, ข้อมูลหน่วยความจำ และรีจิสทรี
ลองใช้โหมดปลอดภัยและการตั้งค่าที่ใช้งานได้ครั้งล่าสุด
โหมดปลอดภัยยังคงเป็นโหมดคลาสสิกเพราะมันโหลดเฉพาะสิ่งที่จำเป็นขั้นต่ำเท่านั้น เพื่อให้ Windows เริ่มทำงาน โดยไม่รวมไดรเวอร์และบริการของบุคคลที่สามจำนวนมากที่อาจเป็นสาเหตุของปัญหา
จากตัวเลือกการบูตขั้นสูง คุณสามารถลองทำตามนี้ได้:
- เซฟโหมด
- เซฟโหมดพร้อมระบบเครือข่าย
- การกำหนดค่าที่สำเร็จครั้งล่าสุดที่ทราบ (หากมีในเวอร์ชันของคุณ)
หากทีมสามารถเริ่มต้นได้ดีในรูปแบบใดรูปแบบหนึ่งเหล่านี้หนึ่งในสิ่งแรกที่แนะนำคือการเปิด ตัวแสดงเหตุการณ์ และตรวจสอบบันทึกระบบและแอปพลิเคชันในช่วงเวลาที่เริ่มมีอาการ โดยคัดลอกเหตุการณ์ที่เกี่ยวข้องเพื่อนำมาวิเคราะห์อย่างรอบคอบ
เริ่มต้นใหม่อย่างสะอาดหมดจดเพื่อค้นหาบริการและคนขับรถที่ขัดแย้งกัน
เมื่อปัญหาชี้ไปยังบริการหรือตัวควบคุมของบุคคลที่สาม (เช่น โปรแกรมป้องกันไวรัส โปรแกรมสำรองข้อมูล ไดรเวอร์จัดเก็บข้อมูลพิเศษ ฯลฯ) การทำ "คลีนบูต" ด้วยเครื่องมือนี้จึงมีประโยชน์มาก msconfig.
ในเมนูการตั้งค่าระบบ คุณสามารถเลือก “การเริ่มต้นระบบแบบเลือกเฉพาะ” ได้ และค่อยๆ ปิดใช้งานบริการที่ไม่สำคัญ โดยเฉพาะบริการที่ไม่ใช่ของ Microsoft จนกว่าคุณจะพบบริการที่ทำให้การเริ่มต้นระบบล้มเหลว เมื่อพบแล้ว คุณสามารถปิดใช้งานบริการนั้นอย่างถาวรและกลับไปสู่ "การเริ่มต้นระบบตามปกติ" ได้
หากปัญหาอยู่ที่การลงนามไดรเวอร์ (โดยเฉพาะในระบบ x64 ที่มี Secure Boot หรือข้อกำหนดด้านลายเซ็น)อีกวิธีหนึ่งคือ เริ่มต้นด้วยตัวเลือก "ปิดใช้งานการใช้งานไดรเวอร์ที่ลงนามแล้ว" และวิเคราะห์ว่าไดรเวอร์ใดที่ต้องการลายเซ็นหรือก่อให้เกิดความขัดแย้ง โดยปฏิบัติตามคำแนะนำในบทความเฉพาะของ Microsoft เกี่ยวกับปัญหาประเภทนี้
ข้อผิดพลาด INACCESSIBLE_BOOT_DEVICE (STOP 0x7B)
ข้อผิดพลาด INACCESSIBLE_BOOT_DEVICE มันเป็นหนึ่งในสิ่งที่น่ากลัวที่สุด เนื่องจากนั่นหมายความว่า Windows ไม่สามารถเข้าถึงไดรฟ์ที่ควรใช้ในการบูตได้ เช่น ไดรเวอร์จัดเก็บข้อมูลไม่เพียงพอ ตัวกรองจากผู้ผลิตรายอื่น การเปลี่ยนแปลงโหมดคอนโทรลเลอร์ SATA/RAID ใน BIOS เป็นต้น
วิธีการขั้นสูงในการแก้ไขข้อผิดพลาดนี้คือการกรองไดรเวอร์ของบุคคลที่สามในรีจิสทรี จากสภาพแวดล้อมการฟื้นตัว:
- บูตเข้าสู่ WinRE โดยใช้ไฟล์ ISO ของ Windows เวอร์ชันเดียวกันหรือสูงกว่า
- เปิดโปรแกรมแก้ไขรีจิสทรี (Registry Editor) แล้วโหลดระบบ (system hive) โดยตั้งชื่อชั่วคราวให้ เช่น ทดสอบ.
- ไปที่คีย์:
HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Control\Class - ค้นหารายการ UpperFilters y LowerFilters ซึ่งหมายถึงไดรเวอร์ที่ไม่ได้มาจาก Microsoft
- สำหรับผู้ขับขี่ที่ต้องสงสัยแต่ละราย ให้ล้างค่าตัวกรองที่เกี่ยวข้องทั้งหมด
- มองหาเหตุการณ์ที่คล้ายคลึงกันอื่นๆ ในรังผึ้ง แก้ไขอย่างระมัดระวัง และนำผึ้งออกจากรังเมื่อเสร็จสิ้น
- รีสตาร์ทระบบในโหมดปกติ แล้วตรวจสอบว่าข้อผิดพลาด 0x7B หายไปแล้วหรือไม่
หากปัญหาเริ่มเกิดขึ้นหลังจากติดตั้งการอัปเดต Windowsอาจจำเป็นต้องลบแพ็กเกจที่ค้างอยู่หรือยกเลิกการอัปเดตด้วย DISMการเปลี่ยนแปลงค่าในรีจิสทรี (ตัวอย่างเช่น บริการ) TrustedInstaller) และแม้กระทั่งการเปลี่ยนชื่อไฟล์ เช่น pending.xml en WinSxS เพื่อปลดล็อกกระบวนการ
เปิดใช้งานการบันทึกการบูตใน Windows
ณ จุดนี้ ตัวเอกของบทความนี้ก็เข้ามามีบทบาท นั่นก็คือ คลังเอกสาร Ntbtlog.txtไฟล์นี้คือบันทึกการบูตระบบของ Windows แบบคลาสสิก ซึ่งจะบันทึกไดรเวอร์และส่วนประกอบต่างๆ ที่ถูกโหลด (หรือล้มเหลว) ในระหว่างการเริ่มต้นระบบ ทำให้คุณสามารถตรวจจับได้ เช่น ไดรเวอร์ตัวใดที่ทำให้ระบบไม่สามารถเริ่มต้นทำงานได้
BootLog ไม่ได้เปิดใช้งานโดยค่าเริ่มต้นแต่การเปิดใช้งานนั้นง่ายมาก และคุณสามารถทำได้สองวิธีหลักๆ คือ: ผ่าน boot.ini ในระบบเก่าหรือด้วย bcdedit ในเวอร์ชันใหม่ๆ เช่น Windows 10 และเวอร์ชันที่ใหม่กว่านั้น การนำไปใช้ร่วมกับเทคนิคต่างๆ จะมีประโยชน์มาก วิเคราะห์ด้วย BootTrace.
เปิดใช้งาน BootLog บนระบบที่ใช้ไฟล์ boot.ini (Windows XP และระบบที่คล้ายคลึงกัน)
ในคอมพิวเตอร์รุ่นเก่า ไฟล์การกำหนดค่าการบูตคือ boot.iniซึ่งตั้งอยู่ในไดรฟ์หลักที่ติดตั้ง Windows (โดยปกติ) C:) และถูกทำเครื่องหมายว่าเป็นไฟล์ที่ซ่อนอยู่และเป็นไฟล์ระบบ
ในการแก้ไข คุณต้องแสดงไฟล์ระบบที่ได้รับการป้องกันก่อน จากตัวเลือกโฟลเดอร์ ให้ค้นหา boot.ini แล้วเปิดด้วยโปรแกรม Notepad คุณจะเห็นบรรทัดที่คล้ายกับนี้ (แต่มีพารามิเตอร์ต่างกัน):
multi(0)disk(0)rdisk(0)partition(1)\WINDOWS=»Microsoft Windows XP Professional» /noexecute=optin /fastdetect
หากต้องการเปิดใช้งานการบันทึกการบูต ให้เพิ่มตัวแก้ไขเข้าไป /BOOTLOG ในตอนท้ายของบรรทัดนั้นส่งผลให้ได้ผลลัพธ์ประมาณนี้:
multi(0)disk(0)rdisk(0)partition(1)\WINDOWS=»Microsoft Windows XP Professional» /noexecute=optin /fastdetect /BOOTLOG
เมื่อบันทึกไฟล์แล้ว ระบบจะเริ่มสร้างเรคอร์ดบูตทุกครั้งที่เริ่มต้นระบบนอกจากนี้ ในสถานการณ์ฉุกเฉิน สามารถเปิดใช้งานการบันทึกข้อมูลได้เป็นกรณีๆ ไปจากเมนูการบูตขั้นสูง โดยการกดปุ่ม F8 ก่อนที่ Windows จะเริ่มทำงาน และเลือกตัวเลือก "เปิดใช้งานการบันทึกข้อมูลการบูต"
ไฟล์ที่สร้างขึ้นจะถูกตั้งชื่อว่าเสมอ Ntbtlog.txt และมันถูกบันทึกไว้ในโฟลเดอร์ Windows, โดยปกติใน C:\Windowsพร้อมเปิดด้วย Notepad เพื่อตรวจสอบว่าไดรเวอร์ใดโหลดอย่างถูกต้องและไดรเวอร์ใดโหลดไม่ถูกต้อง
เปิดใช้งานและปิดใช้งาน BootLog ด้วย BCDEDIT ใน Windows 10 และเวอร์ชันที่ใหม่กว่า
ในระบบสมัยใหม่ที่ใช้ BCD (Windows Vista และรุ่นที่ใหม่กว่า รวมถึง Windows 10)การกำหนดค่าการบูตจะไม่ได้รับการจัดการอีกต่อไปด้วย boot.iniแต่ด้วยที่เก็บข้อมูลการกำหนดค่าบูตและเครื่องมือ bcdedit.
เพื่อเปิดใช้งานการบันทึกการบูตบนระบบเฉพาะระบบหนึ่ง คุณจำเป็นต้องทราบตัวระบุ (ID) ของตัวโหลดนั้นภายใน BCD ซึ่งสามารถหาได้โดยการเรียกใช้คำสั่งต่อไปนี้ในพรอมต์คำสั่งด้วยสิทธิ์ผู้ดูแลระบบ:
bcdedit
ในส่วน “Windows Boot Loader” คุณจะเห็นบรรทัดที่ชื่อว่า “Identifier” ซึ่งอาจจะเป็นอะไรทำนองนี้ {current} หรือ GUID อื่น โดยใช้ ID นั้น คุณสามารถเปิดใช้งาน BootLog ได้ดังนี้:
bcdedit /set {ID} bootlog Yes
หากต้องการปิดใช้งาน เพียงเปลี่ยนค่าเป็น “ไม่”:
bcdedit /set {ID} bootlog No
หลังจากรีสตาร์ทครั้งถัดไป หากเปิดใช้งานการบันทึกข้อมูลไว้ Windows จะสร้างไฟล์ขึ้นมา Ntbtlog.txt ตามเส้นทางที่ระบุไว้ พร้อมข้อมูลที่จำเป็นทั้งหมดเกี่ยวกับตัวควบคุมและโมดูลที่เกี่ยวข้องกับการเริ่มต้นระบบ ซึ่งเป็นประโยชน์อย่างยิ่งในการวินิจฉัยข้อผิดพลาดที่เกิดขึ้นอย่างไม่คาดคิด
การตีความไฟล์ Ntbtlog.txt และบันทึกการบูตอื่นๆ
แม้ว่าในแวบแรก Ntbtlog.txt อาจดูเหมือนเป็นเพียงรายการบรรทัดง่ายๆสิ่งสำคัญคือการเข้าใจว่าเรากำลังมองหารูปแบบใด ในไฟล์นี้ คุณจะเห็นรายการที่ระบุว่าคอนโทรลเลอร์ถูกโหลดสำเร็จหรือถูกข้ามไป
เคล็ดลับคือการหาไดรเวอร์ที่ทำงานผิดพลาดก่อนที่ระบบจะขัดข้องหรือรีสตาร์ท...หรือโปรแกรมที่ไม่ใช่ของ Microsoft อย่างชัดเจนและอาจก่อให้เกิดความขัดแย้ง (เช่น ไดรเวอร์โปรแกรมป้องกันไวรัส, การเข้ารหัสฮาร์ดดิสก์, โปรแกรมสำรองข้อมูล ฯลฯ) การนำข้อมูลนี้มารวมกับเหตุการณ์ใน Event Viewer และหากมี ข้อมูลหน่วยความจำ (memory dump) จะช่วยจำกัดขอบเขตของปัญหาได้อย่างมาก
ในหลายกรณี ข้อมูลหน่วยความจำที่ดัมพ์ออกมาจะชี้ไปยังไฟล์ไดรเวอร์เฉพาะอย่างชัดเจน (ตัวอย่างเช่น \Windows\System32\drivers\stcvsm.sys (สูญหายหรือเสียหาย) ข้อแนะนำทั่วไปในกรณีเช่นนี้คือ:
- ตรวจสอบว่าคอนโทรลเลอร์นั้นมีฟังก์ชันการทำงานอะไรบ้าง และมีความสำคัญต่อการเริ่มต้นระบบหรือไม่
- หากเป็นไดรเวอร์ของบุคคลที่สามที่ไม่จำเป็น ให้ปิดใช้งานโดยการโหลดรีจิสทรีของระบบผ่าน WinRE
- เรียกใช้โปรแกรมตรวจสอบไฟล์ระบบ (
sfc) ในโหมดออฟไลน์ หากสงสัยว่าไฟล์ระบบเสียหาย - หากสงสัยว่ารีจิสทรีเสียหายเป็นวงกว้าง หรือมีการติดตั้งไดรเวอร์/บริการหลายตัวเมื่อเร็ว ๆ นี้ ให้เปลี่ยนชื่อฮิฟเก่า (โดยเพิ่ม
.oldถึงชื่อในC:\Windows\System32\configและกู้คืนข้อมูลสำรองของRegBackจากนั้นจึงพยายามเริ่มต้นตามปกติ
บางครั้ง โดยเฉพาะหลังจากการอัปเดต Windows ครั้งใหญ่ ปัญหาในการซ่อมแซมอาจเกิดขึ้นได้ DISM มาจากเวอร์ชันรูปภาพต้นฉบับหากไฟล์ ISO ที่ใช้ในการกู้คืนไม่ตรงกับเวอร์ชันที่ติดตั้งไว้ DISM ระบบจะแสดงข้อผิดพลาด 0x800f081f (“ไม่พบไฟล์ต้นฉบับ”) ในกรณีเหล่านี้ แนะนำให้ตรวจสอบกับ... dism /get-wiminfo เวอร์ชันที่ถูกต้องของรูปภาพ (install.wim o install.esd) และค้นหาไฟล์ ISO ที่ตรงกับเวอร์ชันของระบบที่ต้องการซ่อมแซม
โดยสรุปแล้ว รีจิสเตอร์บูต เช่น Ntbtlog.txtรวมถึง Startup Repair SrtTrail, ไฟล์ดัมพ์หน่วยความจำ และบันทึกต่างๆ ของ DISM y SFC สิ่งเหล่านี้ก่อให้เกิด “ระบบนิเวศ” ทางข้อมูล เครื่องมือนี้ช่วยให้คุณสามารถสร้างกระบวนการทำงานใหม่ได้ ไม่ว่าจะเป็นการโหลดส่วนต่างๆ การข้ามขั้นตอน การเกิดความเสียหาย และการเปลี่ยนแปลงต่างๆ (ไดรเวอร์ การอัปเดต ซอฟต์แวร์ป้องกันไวรัส หรือยูทิลิตี้ต่างๆ) ที่ทำให้กระบวนการหยุดชะงัก เมื่อรวมเครื่องมือเหล่านี้เข้ากับ MBR, BCD, Bootmgr, RegBack และเทคนิคการซ่อมแซมแบบคลีนบูต โอกาสในการกู้คืนระบบ Windows ที่ไม่สามารถบูตได้โดยไม่ต้องติดตั้งใหม่ทั้งหมดจะสูงกว่าที่คิดไว้ในตอนแรกมาก
นักเขียนผู้หลงใหลเกี่ยวกับโลกแห่งไบต์และเทคโนโลยีโดยทั่วไป ฉันชอบแบ่งปันความรู้ผ่านการเขียน และนั่นคือสิ่งที่ฉันจะทำในบล็อกนี้ เพื่อแสดงให้คุณเห็นสิ่งที่น่าสนใจที่สุดเกี่ยวกับอุปกรณ์ ซอฟต์แวร์ ฮาร์ดแวร์ แนวโน้มทางเทคโนโลยี และอื่นๆ เป้าหมายของฉันคือการช่วยคุณนำทางโลกดิจิทัลด้วยวิธีที่เรียบง่ายและสนุกสนาน


