BootMgr หายไปการแก้ไขตามปกติจะไม่ทำงาน


19

ฉันรู้ว่าคำถามนี้ถูกถามมาก่อน แต่ฉันได้ลองแก้ไขตามปกติทั้งหมดแล้วไม่มีอะไรทำงาน

โดยทั่วไปฮาร์ดไดรฟ์มีสองพาร์ติชันที่มี Vista และ Windows 7 ฉันได้ลบพาร์ติชัน Vista เพื่อเพิ่มพื้นที่และขยายพาร์ติชัน Windows 7 เพื่อเติมเต็มไดรฟ์ (โดยใช้ GParted)

ฉันได้พยายาม:

  1. ใช้งาน Startup Repair - ไม่พบปัญหาใด ๆ
  2. การตั้งค่าพาร์ติชันเป็นใช้งานได้
  3. bootsect /nt60 c: - ทำงาน
  4. BootRec /FixMbr - ทำงาน
  5. BootRec /FixBoot - ทำงาน
  6. BootRec /ScanOs - ฉันได้รับข้อความ "การติดตั้ง Windows ที่ระบุทั้งหมด: 0"
  7. BootRec /RebuildBcd - ฉันได้รับข้อความ "การติดตั้ง Windows ที่ระบุทั้งหมด: 0"

BcdEdit แสดงโปรแกรมจัดการการบูตของ Windows และ Windows Boot Loader ทั้งในพาร์ติชัน C:

[Update]

  1. เปลี่ยนชื่อ BCD และรันใหม่BootRec /RebuildBcd- ทำงาน
  2. คัดลอก bootmgr จาก DVD - ถูกบล็อกเพราะไฟล์มีอยู่แล้ว

[อัพเดท 2]

ฉันพบบทความที่นี่ที่กล่าวถึงคำสั่งอื่น ๆ

  1. C:\chkdsk /f /r - ทำงาน
  2. sfc /scannow /offbootdir=c:\ /offwindir=c:\windows- ทำงาน (ดูที่นี่ )

ฉันจะลองทำอะไรอีก


คุณแน่ใจหรือไม่ว่าคุณกำลังใช้คอนโซลซ่อมสำหรับ Windows รุ่นเดียวกันกับที่คุณพยายามซ่อมแซม
David Schwartz

ใช่ฉันสร้าง DVD ซ่อมแซมเมื่อวานนี้ก่อนที่ฉันจะเริ่ม
parsley72

สำเนาที่เป็นไปได้ของBootmanager หายไป
JdeBP

1
ฉันได้ลองทุกอย่างในคำตอบที่ดีที่สุดแล้ว ฉันจะลองที่เหลือในคืนนี้
parsley72

ครั้งต่อไปให้ใช้ diskpart จาก Windows แทน GParted
ZippyV

คำตอบ:


7

ฉันแก้ไขมันโดย:

  1. สำรองพาร์ติชันไปยังไดรฟ์ภายนอก (โดยใช้ GParted)
  2. ลบพาร์ติชัน
  3. ติดตั้ง Windows 7 อีกครั้งบนไดรฟ์ (ว่างเปล่า)
  4. คัดลอกเนื้อหาของพาร์ติชั่นเหนือการติดตั้ง Windows ใหม่ (ใช้ System Rescue CD)

Windows จะบู๊ตอย่างถูกต้องและเหมือนเดิมทุกประการ


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

ดังที่ได้กล่าวไว้ข้างต้นฉันลองส่งออก bcdedit เปลี่ยนชื่อและสร้างใหม่และมันไม่ทำงาน
parsley72

คุณจะเจาะจงมากขึ้นเกี่ยวกับขั้นตอนที่คุณทำเพื่อแก้ไขปัญหานี้ได้หรือไม่? ฉันอยู่ในสถานการณ์เดียวกันกับ Windows 7 และฉันไม่สามารถคิดได้ว่าคุณหมายถึงอะไรโดย "คัดลอกเนื้อหาของพาร์ทิชันผ่านการติดตั้ง Windows ใหม่ (ใช้ System Rescue CD) ขอบคุณ!
Martin Del Vecchio

1
นี่คือ overkill บ้าและฉันเกือบอยากทำเพราะฉันมีปัญหาเดียวกันใน Windows 8 วิธีหนึ่งที่เหมาะกับฉันแม้ว่าจะใช้bcdbootในคอนโซลการกู้คืนตามที่อธิบายไว้ในคำถามนี้
Stefan Seidel

2
ดีเศร้าอีกติดตั้งจากรอยขีดข่วนแก้ไข ... :( ฉันเดาซ่อมแซมติดตั้งเป็นพอ.
phoeagon

5

ฉันเดาว่าคุณมี Vista บนดิสก์เป็นพาร์ติชัน 1 แล้ว Windows 7 เป็นพาร์ติชัน 2 จากนั้นลบ Vista ซึ่งหมายความว่า Windows 7 อยู่ในพาร์ติชัน 1 แล้ว

น่าเสียดายที่ Windows ระบุพาร์ติชั่นตามหมายเลขเพื่อให้การอ้างอิงพาร์ติชันทั้งหมดในรีจิสทรีของ Windows 7 ไม่ถูกต้องและไม่สามารถใช้งานได้

ฉันเชื่อว่าคุณจะต้องติดตั้ง Windows 7 ใหม่การติดตั้งซ่อมแซมอย่างง่ายควรจะเพียงพอและจะรีเฟรช Windows และไม่รบกวนแอปพลิเคชันที่ติดตั้ง

หรือสำหรับวิธีการลับๆล่อๆคุณสามารถสร้างพื้นที่ว่างเล็ก ๆ บนดิสก์ก่อนพาร์ติชัน Windows 7 และจัดรูปแบบเป็น NTFS มีผลในการสร้างพาร์ติชันตัวแทนจำลอง 1 ซึ่งจะเรียกคืนพาร์ติชัน Windows 7 ไปยังตำแหน่งที่ 2 ดิสก์. คุณอาจยังต้องทำซ่อมแซมการเริ่มต้นอีกครั้ง

[แก้ไข]

คุณสามารถบังคับให้ Windows สร้างพาร์ติชัน BCD ที่จัดเก็บใหม่โดยการบูตจาก DVD ไปที่ตัวเลือก Command Prompt ของ Repair และป้อน:

bcdedit /export C:\BCD_Backup
ren c:\boot\bcd bcd.old
bootrec /rebuildbcd

ในกรณีที่มีปัญหาสิทธิ์ใช้คำสั่งattrib bcd -s -h -rก่อนที่จะเปลี่ยนชื่อ รีบูทและถ้ามันไม่ทำงานให้ทำการ Startup Repair อีกครั้ง

อีกวิธีการแก้ปัญหาที่สิ้นหวังคือการคิดว่า bootmgr ได้รับความเสียหายและการบูตดังกล่าวข้างต้นและทำ

ren c:\bootmgr deletemelatter
bootrec /rebuildbcd
bootrec /fixboot

หากไม่มีอะไรใช้งานได้ให้ฟอร์แมตดิสก์ใหม่ทั้งหมดและติดตั้งใหม่ทั้งหมด ไม่ใช่ทุกปัญหาที่สามารถวิเคราะห์หรือแก้ไขได้


คุณสามารถแก้ไขลิงก์ได้หรือไม่ ฉันคิดว่าฉันได้ลองแล้ว แต่ฉันต้องการตรวจสอบสิ่งที่คุณแนะนำ
parsley72

เสร็จสิ้น - ลิงก์ได้รับการซ่อมแซม
harrymc

ฉันลองวันนี้ แต่ฉันเลือกตัวเลือกเพื่อติดตั้ง Windows 7 เวอร์ชันใหม่และบอกว่าฉันมีพื้นที่ไม่เพียงพอ ฉันเข้าใจสิ่งที่คุณกำลังพูดเกี่ยวกับการอ้างอิงพาร์ติชัน แต่ทำไมต้องใช้ Windows 7 registry ในการโหลด BootMgr ต้องใช้ BootMgr แน่นอนในการบูต Windows 7 เพื่อให้สามารถโหลดรีจิสตรีได้
parsley72

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

1
"ทุกอ้างอิงพาร์ทิชันในรีจิสทรีของ Windows 7 อยู่ในขณะนี้ไม่ถูกต้องและไม่ได้" ... ซึ่งอ้างอิงคุณหมายถึงว่า? มีเพียงที่เดียวในรีจิสทรีที่ฉันรู้ว่ามันเก็บการอ้างอิงของพาร์ติชัน ( HKLM\SYSTEM\MountedDevices) และนั่นแก้ไขได้ด้วยมือ - และฉันค่อนข้างแน่ใจว่ามันจะติดตามพาร์ติชั่นโดยภาคเริ่มต้นไม่ใช่ตามจำนวน ...
Mehrdad

5

โปรดตรวจสอบให้แน่ใจว่าได้ตั้งค่าพาร์ติชัน Windows 7 Recovery เป็นแอ็คทีฟ !!

ฉันมีปัญหาเพราะพาร์ติชันที่ใช้งานอยู่ถูกตั้งค่าเป็น C: \


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

@afaolek ตอนนี้คุณทำการสำรองข้อมูลหรือไม่
Frank Kusters

2

มีปัญหาเดียวกันและด้านล่างแก้ไขให้ฉันโดยสมมติว่าคุณรู้แล้วและเริ่มช่วยเหลือดิสก์ใน Command Promt ฉันใช้เครื่องมือ bcdboot.exe เพื่อสร้าง BCD ใหม่:

bcdboot c:\Windows /l en-gb /s x:

ในกรณีที่xมีไดรฟ์ที่มีSystemฉลาก


1
สิ่งนี้ใช้ได้สำหรับฉันเมื่อ bootrec ไม่ได้ ขอบคุณมาก. ฉันไม่จำเป็นต้องระบุ x: "bcdboot c: \ Windows / l en-us" ก็เพียงพอแล้ว
Dmiters

@DmitryNarkevich ยินดีต้อนรับ เหมือนกันสำหรับฉันในเวลานั้นนั่นคือเหตุผลที่ฉันโพสต์คำตอบนี้
Eduard Florinescu

1

ตัวโหลดบูต Windows ระบุพาร์ติชันโดยออฟเซ็ตในเซกเตอร์ + ลายเซ็นดิสก์ 4 ไบต์ใน MBR ดังนั้นเมื่อคุณย้ายพาร์ติชันระบบของคุณด้วย GParted สิ่งแปลกประหลาดสองอย่างเกิดขึ้น:

1) ดิสก์ออฟเซ็ตของพาร์ติชันระบบ Win7 เปลี่ยนไปการอ้างอิงทั้งหมดที่เก็บไว้ใน BCD และกลุ่มรีจิสทรีของระบบจะไม่ทำงานในขณะนี้

2) พาร์ติชันระบบ Win7 ตอนนี้มี ID เดียวกับพาร์ติชันระบบ WinVista ที่เคยมีดังนั้นการอ้างอิงสองรายการจึงเกิดการชนกัน: bootloader ด้วยการตั้งค่าเก่าพยายามบูต Win7 เป็น Vista แต่ล้มเหลว

โดยทั่วไปคุณจำเป็นต้องลบกลุ่มรีจิสทรี BCD และสร้างใหม่ตั้งแต่ต้นและแก้ไขการอ้างอิงไปยังดิสก์ C: ใน MountedDevices ของ Win7 ในกลุ่มรีจิสทรีของระบบ

การใช้Emergency Boot CDคุณสามารถลบ BCD ใน "ตัวจัดการไฟล์" จากนั้นสร้าง BCD ใหม่จากศูนย์และแก้ไข MountDevices ใน "Mount & Boot Center"



1

ฉันต้องการปรับปรุง parsley72 วิธีแก้ปัญหาให้:

แทนที่จะคัดลอกพาร์ติชันติดตั้ง windows แล้วคัดลอกกลับ:

คุณสามารถบูตไปที่ CD (ทั้ง System Rescue Disk หรือ windows set up disk) - ฉันใช้ SRD เพื่อแก้ไขปัญหาของฉัน - จากนั้นเลือกตัวเลือก Fix your windows มันทำเวทย์มนตร์!

ฉันคิดว่าเหตุผลก็คือคุณมีทุกอย่างใน C: (ระบบปฏิบัติการที่ได้รับการกู้คืน, MBR, ฯลฯ ) สิ่งเดียวที่เหลืออยู่คือ Windows จะหาข้อมูลการบู๊ต (สิ่งที่ซอฟต์แวร์ Windows สามารถทำได้)

ตรรกะใช่มั้ย


1
นั่นจะเป็นรายการแรกที่ฉันลองซึ่งไม่ได้ช่วยอะไร
parsley72

1

นี่เป็นเพียงความเห็นที่ชัดเจนในคำพูดของ Narkevich (ฉันต้องการเพียงแค่เพิ่มความคิดเห็น แต่ดูเหมือนจะถูกกันออกไป

เหตุผลที่คุณไม่ต้องการตัวเลือก / sx: โดยค่าเริ่มต้นการบูต bcd เปลี่ยน bcd ในปริมาณที่มีการใช้งานในปัจจุบัน นั่นคือสิ่งที่คุณต้องการเกือบทุกครั้ง หากมีใครระบุ / s และตัวอักษรไดรฟ์ดังนั้นทั้ง 1 ตัวอักษรชื่อไดรฟ์คือไดรฟ์ข้อมูลที่ใช้งานอยู่และคำสั่งจะทำสิ่งเดียวกันโดยไม่ต้อง / sx: เช่นเดียวกับมันหรือ 2 ตัวอักษรไดรฟ์จะแตกต่างจากปัจจุบัน ปริมาณ ในกรณีนี้สิ่งที่เกิดขึ้นจริง ณ เวลาบูตอาจส่งผลกระทบต่อเฉพาะถ้า bcd บนดิสก์ที่ใช้งานอยู่เสียหายและหรือ 2 ในเวลาต่อมาคุณเปลี่ยนดิสก์ที่มีการทำเครื่องหมายว่าใช้งานกับชื่อที่ตั้งตาม / s

ไชโย


คำตอบจะถูกสงวนไว้สำหรับการแก้ปัญหาสำหรับคำถาม ตัวแทนความคิดเห็นที่ไม่เพียงพอจะไม่เปลี่ยนสิ่งนี้ให้เป็นโซลูชัน ไม่ใช่คำตอบดึงดูด downvotes ซึ่งจะทำให้คุณเข้าถึงตัวแทนเพื่อแสดงความคิดเห็น อาจเหมาะสมกว่าที่จะบันทึกสิ่งนี้จนกว่าคุณจะสามารถโพสต์เป็นความคิดเห็นได้
fixer1234
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.