Tuesday, September 2, 2008

Windows XP could not start because file "ntoskrnl.exe" is missing or corrupt

ปัญหาบูตเข้า Windows XP ไม่ได้เมื่อติดตั้งร่วมกับ Windows Vista ในแบบดูอัลบูต
สำหรับยูสเซอร์ที่ทำการติดตั้ง Windows Vista ร่วมกับ Windows XP บนคอมพิวเตอร์เครื่องเดียวกันในแบบดูอัลบูท และประสบกับปัญหาไม่สามารถบูตคอมพิวเตอร์เข้าระบบ Windows XP ได้ โดยจะแสดงข้อผิดพลาดดังนี้

Windows could not start because the following file is missing or corrupt:
C:\Windows\system32\ntoskrnl.exe. Please re-install a copy of the above file.


ซึ่งสาเหตุของปัญหาดังกล่าวนี้ เกิดจากการติดตั้ง Windows Vista บนพื้นที่ว่างของฮาร์ดดิสก์ที่อยู่ด้านหน้าพาร์ติชันที่ Windows XP ติดตั้งอยู่ ซึ่งจะทำให้ Windows Vista ทำการสร้างพาร์ติชันขึ้นใหม่ในพื้นที่ว่างของฮาร์ดดิสก์ดังที่กล่าวมา เนื่องจากพาร์ติชันที่สร้างขึ้นใหม่นั้นอยู่ด้านหน้าพาร์ติชันที่ Windows XP ทำให้ตำแหน่งไฟล์ Boot.ini ของ Windows XP บนระบบเปลี่ยนไป

ตัวอย่างการติดตั้ง Windows Vista ร่วมกับ Windows XP
  • มีฮาร์ดดิสก์ 1 ตัว (Disk 0) ซึ่งมีพื้นที่ฮาร์ดดิสก์ว่างอยู่ด้านหน้าพาร์ติชันที่ Windows XP ติดตั้งอยู่
  • ไฟล์ Boot.ini ของ Windows XP ชี้ไปยังตำแหน่ง disk(0)partition(1) สำหรับไฟล์สตาร์ทอัพของ Windows XP
  • Windows Vista ทำการสร้างพาร์ติชันในพื้นที่ว่างของฮาร์ดดิสก์

ในลักษณะการใช้งานด้านบน หลังจากทำการติดตั้ง Windows Vista ไฟล์สตาร์ทอัพของ Windows XP จะอยู่ที่ disk(0)partition(2) ในขณะที่ไฟล์ Boot.ini ของ Windows XP ยังคงชี้ไปยังตำแหน่ง disk(0)partition(1) เหมือนเดิม

วิธีการแก้ไข
วิธีการแก้ไขสำหรับยูสเซอร์ที่ประสบกับปัญหานี้ ทำได้โดยการแก้ไขไฟล์ Boot.ini ของ Windows XP ให้ชี้ตำแหน่งให้ถูกต้อง ตามขั้นตอนดังนี้

1. ทำการสตาร์ท Windows Vista
2. จากนั้นคลิก Start คลิก Explore
3. บนเมนู Organize คลิก Folder and Search Options
4. ในหน้าไดอะล็อกบ็อกซ์ Folder Options ให้คลิกแท็บ View
5. ในบริเวณ Advanced settings ให้คลิก Show hidden files and folders แล้วเคลียร์เช็คบ็อกซ์ Hide extensions for known file types เคลียร์เช็คบ็อกซ์ Hide protected operating system files (Recommended) และคลิก Yes เพื่อยืนยันว่าต้องการแสดงไฟล์ต่างๆ ของ operating system เสร็จแล้วคลิก OK
6. ในหน้าต่าง Explorer ให้คลิกที่ไดร์ฟที่ระบบ Windows XP ติดตั้งอยู่ (เช่นไดร์ฟ D: เป็นต้น)
7. ในแพนด้านขวามือ ให้คลิกขวาที่ไฟล์ Boot.iniแล้วคลิก Properties
8. ในหน้าไดอะล็อกบ็อกซ์ Properties ของ ไฟล์ Boot.ini ให้คลิกแท็บ Security จากนั้นคลิก Advanced
9. คลิกแท็บ Owner จากนั้นคลิก Edit
10. ในหน้าไดอะล็อกบ็อกซ์ User Account Control ให้คลิก Continue หรือใส่พาสเวิร์ดของ Administrator
11. ในหน้า Change owner to list คลิก alias หรือปล่อยตามค่าดีฟอลท์ เสร็จแล้วคลิก OK 4 ครั้ง
12. คลิกขวาที่ไฟล์ Boot.ini แล้วคลิก Edit
13. ทำการแก้ไขพาธ Advanced RISC Computing (ARC) ของ Windows XP ให้ตรงกับตำแหน่งที่ถูกต้อง ตัวอย่างเช่น หากทำการติดตั้ง Windows Vista บนพาร์ติชันหน้าพาร์ติชันที่ Windows XP ติดตั้งอยู่ก็ให้ทำการเพิ่มค่าพาร์ติชันอีก "1" นั้นคือหากค่าในไฟลื Boot.ini เป็น partition(1) ก็ให้แก้ไขเป็น partition(2) เป็นต้น โดยที่พาธ ARC หลังทำกรแก้ไขจะมีลักษณะ ดังนี้

multi(0)disk(0)rdisk(0)partition(2)\WINDOWS="Microsoft Windows XP Professional" /fastdetect

14. เมื่อทำการแก้ไขไฟล์ Boot.ini เสร็จแล้ว ให้ทำการบันทึก แล้วปิดโปรแกรม Notepad.exe
15. ทำการรีสตาร์ทระบบแล้วเลือกบูตเข้าระบบ Windows XP

วิธีการนี้สามารถใช้ได้กับ
  • Windows Vista Ultimate
  • Windows Vista Enterprise
  • Windows Vista Business
  • Windows Vista Home Premium
  • Windows Vista Home Basic
  • Windows Vista Starter
  • Windows Vista Enterprise 64-bit Edition
  • Windows Vista Home Basic 64-bit Edition
  • Windows Vista Home Premium 64-bit Edition
  • Windows Vista Ultimate 64-bit Edition

ลิงค์ที่เกี่ยวข้อง


© 2008 Thai Windows Administrator Blog, All Rights Reserved.

0 Comment: