มีสองคำตอบสำหรับคำถามของคุณที่แตกต่างกันขึ้นอยู่กับวิธีการบูตคอมพิวเตอร์ในตอนแรก ในความเป็นจริงคำอธิบายที่คุณอ้างถึงสาเหตุของปัญหา (ตำแหน่งของพาร์ติชันที่เปลี่ยนแปลง) นำไปใช้กับสถานการณ์แรกเท่านั้น AFAIK (ด้วยข้อแม้ที่ฉันรู้เกี่ยวกับการบูท Windows น้อยกว่าเกี่ยวกับ Linux ดังนั้นฉันอาจเข้าใจผิด การบูทโหมด) โหมดการบูตสองโหมด - และสถานการณ์ - คือโหมด BIOS และโหมด EFI นอกจากนี้ยังมีปัจจัยทั่วไปบางอย่างที่อาจเกิดขึ้น
ไบออสโหมด
คอมพิวเตอร์ส่วนใหญ่ที่ขายก่อนปลายปี 2011 ใช้ ระบบอินพุต / เอาท์พุตพื้นฐาน (BIOS) เฟิร์มแว คอมพิวเตอร์ที่ใช้ BIOS จะบู๊ตผ่านตัวโหลดบูตซึ่งเก็บไว้ใน Master Boot Record (MBR) ซึ่งเป็นเซกเตอร์แรกของดิสก์ ฉันจะไม่เข้าไปดูรายละเอียดที่เต็มไปด้วยเลือด แต่บูตบูตโหมด BIOS ส่วนใหญ่จะขึ้นอยู่กับจำนวนเซกเตอร์เริ่มต้นของพาร์ติชันบนดิสก์ นี่เป็นเพราะ MBR มีขนาดเล็กเกินกว่าที่จะเก็บบูทโหลดเดอร์แบบเต็มดังนั้นโค้ด MBR จะโหลดโค้ดบูตเพิ่มเติมจากพาร์ติชั่นบูตพาร์ติชัน (PBR ของพาร์ติชั่นแรกของพาร์ติชั่น) ซึ่งจะโหลดรหัสเพิ่มเติม ตามจำนวนภาค) รายละเอียดที่แน่นอนแตกต่างกันไปตามระบบปฏิบัติการและบูตโหลดเดอร์ แต่ประเด็นสำคัญคือหมายเลขเซกเตอร์นั้นมีความสำคัญในกรณีส่วนใหญ่ ดังนั้นหากการดำเนินการโคลนดิสก์ของคุณเปลี่ยนเซกเตอร์เริ่มต้นของพาร์ติชันสำหรับเริ่มระบบโดยไม่ต้องปรับรหัสการโหลดบูตหรือการกำหนดค่าที่ใช้กระบวนการบูตจะล้มเหลว
มีรายละเอียดพาร์ติชันอื่น ๆ ที่อาจส่งผลกระทบต่อสิ่งต่าง ๆ เช่นการมีอยู่ (หรือไม่มี) ของ "บูตธง" (หรือที่รู้จักว่า "ธงที่ใช้งาน") บนพาร์ติชันที่สามารถบูต เนื่องจากรหัสการบูตอยู่ใน MBR และ PBR การดำเนินการโคลนดิสก์จะต้องคัดลอกรหัสตัวโหลดการบูตนี้ด้วย ไม่มีการรับประกันว่าโปรแกรมการโคลนดิสก์แบบสุ่มจะคัดลอกสิ่งเหล่านี้ (ฉันไม่สามารถพูดกับ AOMEI ซึ่งคุณบอกว่าคุณใช้โดยเฉพาะ)
สังเกตได้ว่า มากที่สุด (แต่ไม่ใช่ทั้งหมด) คอมพิวเตอร์ที่มาพร้อมกับ Windows 7 ใช้ BIOSes เช่นเดียวกับ Windows Vista และคอมพิวเตอร์รุ่นก่อนหน้า (ยกเว้นคอมพิวเตอร์ที่ใช้ Itanium หรือ CPU แปลกใหม่อื่น ๆ ) เริ่มตั้งแต่ปลายปี 2554 ผู้ผลิตเปลี่ยนจาก BIOS ไปเป็น EFI / UEFI รุ่นใหม่อย่างรวดเร็ว (อธิบายต่อไป) แต่ EFIs ส่วนใหญ่มีคุณสมบัติที่เรียกว่า Compatibility Support Module (CSM) ซึ่งช่วยให้คอมพิวเตอร์เหล่านี้สามารถบูตด้วยวิธี BIOS โหมด"). ดังนั้นจึงเป็นไปได้ที่จะติดตั้ง Windows (แม้แต่ Windows 8.x และ 10) ใน BIOS / CSM / โหมดดั้งเดิมบนคอมพิวเตอร์ที่ใช้ EFI รุ่นใหม่ เมื่อกำหนดค่าเช่นนั้นคอมพิวเตอร์จะทำงานเหมือนคอมพิวเตอร์ที่ใช้ BIOS
EFI โหมด
ส่วนต่อประสานเฟิร์มแวร์ที่ขยายได้ (EFI) หรือ 2.x Variant, Unified EFI (UEFI) เป็นการแทนที่สำหรับ BIOS ซึ่งกลายเป็นเฟิร์มแวร์ที่โดดเด่นบนคอมพิวเตอร์เครื่องใหม่ที่เริ่มต้นในปลายปี 2011 สับสนผู้ผลิตหลายรายใช้คำว่า "BIOS" ในการอ้างอิง EFIS IMHO นี่เป็นข้อปฏิบัติที่ไม่ดีเนื่องจากมันทำให้คนคิดว่า EFIs เป็นเพียงการอัปเดตเล็กน้อยสำหรับ BIOSes แต่พวกเขาต่างกันอย่างสิ้นเชิงในวิธีที่พวกเขาบู๊ต
วิธีการบูตของ EFI เกี่ยวข้องกับไฟล์ MBR และ PBR ไม่มีบทบาทพิเศษและไม่เก็บรหัสการบูต คอมพิวเตอร์รู้ว่าไฟล์บูตโหลดเดอร์ตัวใดที่จะเรียกใช้เนื่องจากข้อมูลนั้นถูกเก็บไว้ใน NVRAM โดยตัวติดตั้งระบบปฏิบัติการ (พิเศษ ชื่อไฟล์ทางเลือก , EFI/BOOT/bootx64.efi
ถูกใช้โดยสื่อภายนอกที่สามารถบูตได้เช่น USB แฟลชไดรฟ์) EFIs ซึ่งแตกต่างจาก BIOSes เข้าใจพาร์ติชันและเพื่อให้บูตโหลดเดอร์ EFI ไม่ได้อ้างถึงภาคส่วนเริ่มต้นของพาร์ติชัน ดังนั้นภาคเริ่มต้นของพาร์ติชั่นจึงมีความสำคัญน้อยกว่าในการบูทโหมด EFI
แต่การบูตในโหมด EFI นั้นใช้วิธีการระบุพาร์ติชันด้วยตนเอง โดยปกติจะทำโดย ตัวระบุที่ไม่ซ้ำกันทั่วโลก (GUID; aka UUID) ค่าที่เกี่ยวข้องกับทั้งดิสก์และพาร์ติชัน ดังนั้นหากการดำเนินการโคลนดิสก์เก็บรักษาค่าของดิสก์และพาร์ติชัน GUID ไว้ดิสก์ที่ถูกโคลนควรจะสามารถบูตได้ หากไม่เป็นเช่นนั้นกระบวนการบู๊ตอาจล้มเหลวในขั้นตอนใดขั้นตอนหนึ่ง ฉันไม่รู้ว่า AOMEI จะรักษาค่า GUID ไว้ตามค่าเริ่มต้นหรือไม่ โปรดทราบว่าการจำลองแบบ GUID โดยปกติจะไม่ได้รับการสนับสนุนเนื่องจากสิ่งเหล่านี้ควรจะเป็น เป็นเอกลักษณ์ ค่า; แต่ในกรณีของดิสก์ที่ถูกโคลนเพื่อให้คุณสามารถแทนที่ฮาร์ดแวร์เก่าการจำลองค่า GUID บนดิสก์ใหม่เป็นสิ่งที่ต้องการเพื่อให้ดิสก์ใหม่สามารถบูตได้โดยไม่ต้องเปลี่ยนรายการ NVRAM
อีกหนึ่งปัญหาที่ซับซ้อนคือ EFIs จำนวนมากจะกำจัดรายการบูตที่ไม่ถูกต้องจาก NVRAM ของพวกเขา ดังนั้นหากคุณจะโคลนดิสก์สำหรับบูตไปยังอีกแบบหนึ่งในลักษณะที่ทำ ไม่ เก็บรักษาค่า GUID และถ้าคุณลบดิสก์ดั้งเดิมคอมพิวเตอร์อาจ "ลืม" ว่าดิสก์แผ่นแรกสามารถบูตได้ ดังนั้นจึงอาจไม่สามารถบูตได้เมื่อคุณเสียบดิสก์ดั้งเดิมกลับเข้าไป
ปัจจัยทั่วไป
โดยหลักการแล้ว boot loader และการกำหนดค่า OS อาจขึ้นอยู่กับ ระบบแฟ้ม หมายเลขซีเรียล UUID หรือชื่อในการกำหนดค่า ค่าเหล่านี้คล้ายกับ กั้น GUIDs แต่จะถูกเก็บไว้ในโครงสร้างข้อมูลของระบบแฟ้มแทนที่จะเป็นตารางพาร์ติชัน ฉันไม่รู้ว่า Windows ทำสิ่งนี้โดยฉับพลัน แต่ลีนุกซ์ส่วนใหญ่ทำ
หากคุณพบปัญหาในการบู๊ตคุณต้องใช้ OS-centric boot loader repair หรือขั้นตอนการติดตั้งใหม่เพื่อแก้ไขสิ่งต่างๆ รายละเอียดอาจแตกต่างกันไปขึ้นอยู่กับวิธีการบูต ตัวอย่างเช่นคุณจะไม่ใช้เครื่องมือที่กู้คืน MBR ในการบูตโหมด EFI คำแนะนำที่เก่ากว่าจำนวนมากมักจะทำการบู๊ตในโหมด BIOS ดังนั้นจึงไม่สามารถใช้งานได้กับการติดตั้งโหมด EFI ที่ใหม่กว่า