Computer >> คอมพิวเตอร์ >  >> ระบบ >> Windows

แล็ปท็อปที่ยุ่งเหยิง:การกู้คืน Windows 10

ไม่เป็นไร. เมื่อไม่กี่วันที่ผ่านมา เราได้พูดคุยเกี่ยวกับแล็ปท็อปที่มีปัญหาของฉันและการกู้คืนอินสแตนซ์นีออนของ KDE ที่ตามมาในการตั้งค่า Windows และ Linux แบบแปดบูต ผลปรากฎว่า ดิสทริบิวชันต่างๆ ไม่สามารถบู๊ตได้ เนื่องจากถูกกำหนดค่าให้เมานต์พาร์ติชันที่ไม่มีอยู่จริง สิ่งนี้เกิดขึ้นเนื่องจากระบบ Linux ใหม่ใช้วิธีการทำเครื่องหมายอุปกรณ์ที่ไม่เหมาะสม โดยใช้สตริง UUID ที่ไม่มีความหมายซึ่งมนุษย์อ่านไม่ได้แทนที่จะเป็นตัวเลขธรรมดา

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

ปัญหาในรายละเอียดเพิ่มเติม

มาที่หน้าจอคอนโซลการกู้คืนของ Windows 10 สีน้ำเงินซีด อ่านว่า:

การซ่อมแซมอัตโนมัติไม่สามารถซ่อมแซมพีซีของคุณได้
กด "ตัวเลือกขั้นสูง" เพื่อลองใช้ตัวเลือกอื่นๆ ในการซ่อมแซมพีซีของคุณหรือ "ปิดเครื่อง" เพื่อปิดพีซีของคุณ
ล็อกไฟล์:C:\Recovery\WindowsRE\Winre.wim\System32\Logfiles\Srt\SrtTrail.txt.

เช่นเดียวกับนักเทคนิคที่ดี ฉันตัดสินใจว่าแนวทางการดำเนินการที่ดีที่สุดคือการเข้าสู่ตัวเลือกขั้นสูง เริ่มพรอมต์บรรทัดคำสั่ง จากนั้นไปที่ไฟล์บันทึกและอ่านเนื้อหา ยกเว้นไฟล์นี้ไม่ได้อยู่ที่นั่น เราจะสำรวจในไม่ช้านี้

ณ จุดนี้ ฉันคิดว่าการทดสอบการกู้คืนอิมเมจระบบล่าสุดที่ฉันทำอาจมีส่วนรับผิดชอบบางส่วนหรือทั้งหมดสำหรับปัญหาดังกล่าว ดังนั้น Windows 10 bootloader อาจจำเป็นต้องแก้ไข ฉันสงสัย โดยเฉพาะอย่างยิ่งตั้งแต่ฉันใช้ Linux bootloader เพื่อควบคุมลำดับ แต่เพื่อขจัดสิ่งที่เห็นได้ชัด ฉันตัดสินใจลองแก้ไข bootloader อย่างง่าย:

bootrec.exe /rebuildbcd
bootrec.exe /fixmbr
bootrec.exe /fixboot

ฉันพบปัญหาทันที ถ้าฉันเรียกใช้คำสั่งนี้จากธัมบ์ไดรฟ์ USB ของ Windows 10 ก็จะไม่พบอะไรเลย มีเหตุผลสำหรับสิ่งนี้อีกครั้งเราจะไปที่นั่น ถ้าฉันเรียกใช้สิ่งนี้จากคอนโซลการกู้คืน มันจะพบไดรฟ์หนึ่ง แต่มันอ้างถึงไดรฟ์ D:\ แทนที่จะเป็นไดรฟ์ C:\ และเมื่อฉันพยายามเพิ่มรายการจริงๆ คำสั่งจะบ่นว่าไม่สามารถดำเนินการให้เสร็จสมบูรณ์ได้ การทำงาน:

ระบบไม่พบเส้นทางที่ระบุ

และคำสั่งสุดท้ายจะทำให้เกิดข้อผิดพลาดต่อไปนี้:

การเข้าถึงถูกปฏิเสธ

ข้อเท็จจริงที่ว่าไฟล์บันทึกควรอยู่ภายใต้ C:\ แต่ไม่มีอยู่ และข้อเท็จจริงที่ bootrec.exe พบระบบปฏิบัติการภายใต้ D:\ ทำให้ฉันเชื่อว่าบางทีอักษรระบุไดรฟ์อาจไม่ได้รับการกำหนดอย่างถูกต้อง และ ที่ฉันต้องแก้ไข มาดูวิธีแก้ปัญหากัน

โซลูชันที่ 1

ฉันเปิดตัวเครื่องมือ diskpart จาก cmd นี่คือเครื่องมือจัดการดิสก์ที่คุณมักจะใช้ใน Windows ซึ่งหมายถึง GUI ที่ดี ตรงนี้เราต้องใช้ command-line, uhm, commands แทน หากคุณไม่แน่ใจว่าต้องทำอย่างไร คุณสามารถพิมพ์ ? เพื่อรับแนวคิดเกี่ยวกับตัวเลือกและค่าสถานะต่างๆ ก่อนอื่น เรามาตรวจสอบอักษรเสียงกันก่อน

diskpart
รายการวอลุ่ม

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

เลือกเล่มที่ 2
กำหนดตัวอักษร=(สิ่งที่ไม่ใช่ C):

เลือกเล่มที่ 5
กำหนดตัวอักษร=C:

ฉันกลับไปเรียกใช้ bootrec.exe และดำเนินการตามขั้นตอน แต่ระบบยังคงไม่สามารถบูตได้

โซลูชัน 2

ณ จุดนี้ ฉันแน่ใจว่าปัญหาไม่ได้อยู่ที่ bootloader ถึงเวลาที่จะเลื่อนขึ้นไปยังขั้นตอนถัดไปในกระบวนการบู๊ต ในกรณีนี้คืออิมเมจสำหรับบูตซึ่งอยู่บนพาร์ติชัน EFI บางที ด้วยเหตุผลใดก็ตาม ไฟล์นี้อาจเสียหาย และจำเป็นต้องสร้างใหม่

ฉันบูทเข้าสู่คอนโซลการกู้คืน และรันแบบฝึกหัดด้วย diskpart อีกครั้ง แต่ตอนนี้มีสองขั้นตอนเท่านั้น ขั้นแรก ให้แมปไดรฟ์ข้อมูลที่ถูกต้องกับ C:\ ประการที่สอง ฉันแน่ใจว่าฉันกำลังทำงานกับพาร์ติชัน EFI โปรดใส่ใจกับอักษรระบุไดรฟ์ หากคุณกลัวว่าจะทำพลาด คุณสามารถเลือกระดับเสียง กำหนดตัวอักษรใหม่ จากนั้นดำเนินการสร้างอิมเมจสำหรับบูตใหม่ ถ้าตัวอักษรถูกต้อง ก็ข้ามไปได้เลย

diskpart
รายการไดรฟ์ข้อมูล
# เลือกพาร์ติชันที่สอดคล้องกับ C:
เลือกไดรฟ์ข้อมูล X
กำหนดตัวอักษร=C:
# เลือกพาร์ติชัน EFI (FAT32 พร้อมด้วย boot flag และมักจะซ่อนอยู่)
เลือกระดับเสียง Y
assigned letter=F:
exit

ฉันใช้ตัวอักษร F สำหรับ EFI คุณสามารถเลือกคนที่คุณต้องการ ขั้นตอนการซ่อมแซมอิมเมจสำหรับบูต:

bcdboot.exe C:\Windows /s F:/f UEFI

เรามีอะไรที่นี่? เราเรียกใช้ bcdboot ในลักษณะต่อไปนี้:

  • แหล่งที่มา - เริ่มต้นพาร์ติชันระบบโดยใช้ไฟล์ BCD จาก C:\Windows
  • /s - ระบุตัวอักษรของพาร์ติชันระบบ (EFI)
  • /f - ระบุประเภทเฟิร์มแวร์

ทั้ง /s และ /f เป็นทางเลือก ตรวจสอบข้อมูลอ้างอิงทางเทคนิคเพื่อดูรายละเอียด

เมื่อขั้นตอนนี้เสร็จสมบูรณ์ ฉันรีบูท และ Windows 10 ก็เปิดใช้งานได้ตามปกติโดยที่ทุกอย่างไม่เสียหาย ลีนุกซ์รุ่นอื่นๆ ทั้งหมดใช้งานได้ GRUB2 ยังคงไม่ถูกแตะต้อง และไม่มีข้อมูลสูญหาย

บทสรุป

ฉันพบว่าแบบฝึกหัดนี้ค่อนข้างน่าหงุดหงิด แต่ก็ค่อนข้างสนุกด้วย เมื่อพูดถึงด้านเทคนิคเชิงลึก Windows จะทำงานเหมือนกับ Linux และมีความคลุมเครือพอๆ กันและไม่ยืดหยุ่นเมื่อพูดถึงข้อผิดพลาดในการบู๊ตระบบ ฉันสงสัยว่าทำไมการซ่อมอัตโนมัติถึงทำสิ่งที่ฉันทำไม่ได้ ลำดับขั้นตอนที่ฉันทำนั้นไม่มีอะไรพิเศษหรือวิเศษเลย นอกจากนี้ บันทึกยังไม่สามารถเข้าถึงได้ง่าย เหตุใดจึงไม่อนุญาตให้ผู้ใช้อ่านบนหน้าจอข้อผิดพลาดแรกใช่ไหม

ปัญหาอีกประการหนึ่งคือ เมื่อมีความคลาดเคลื่อนในสิ่งที่ระบบคาดหวังให้เป็นเช่นนั้น เช่น อักษรระบุไดรฟ์ คุณจะพบกับปัญหาอื่นๆ อีกครึ่งโหลที่ทำให้คุณเสียสมาธิ วิธีแก้ไม่ยากแต่คุณเสียเวลากับการแก้ปัญหาไร้สาระ นั่นคือซอฟต์แวร์ที่ทันสมัยสำหรับคุณ ฉันหวังว่าฉันจะอธิบายให้ชัดเจนกว่านี้เล็กน้อยถึงสิ่งที่คุณสามารถทำได้ หากคุณกำลังบูตหลายเครื่อง และคุณมีปัญหาในการเริ่ม Windows 10 หากข้อมูลไม่เสียหาย ให้เริ่มต้นง่ายๆ และดำเนินการตามลำดับการบูตทีละขั้นตอน . ตามปรัชญาแล้ว ก็เหมือนกับลีนุกซ์ อนาคตไม่ได้สดใส ดังนั้นจงใช้เสรีภาพทางเทคนิคเพียงเล็กน้อยที่คุณมี ก่อนที่ทุกอย่างจะกลายเป็นฝันร้ายที่เป็นนามธรรม

ไชโย.