ฉันทำสิ่งที่เป็นใบ้ ... ฉันลืมว่า Ubuntu 10.04 (Lucid Lynx) เปลี่ยนเป็นGRUB 2 ซึ่งทำให้ไฟล์ * .mod (โมดูลเคอร์เนล) /boot/grub
ตัน ฉันคิดว่าพวกเขาเป็นไฟล์ซาวด์แทร็กที่ใส่ผิดและฉันก็ย้ายมัน ไม่จำเป็นต้องพูดรีบูตครั้งต่อไปเป็นบาดแผล ฉันถูกนำเสนอด้วยบางสิ่งที่ฉันไม่มีความทรงจำในการมองเห็น ... 'การช่วยเหลือด้วงด้วง>'
ด้วยความช่วยเหลือของการแก้ไขข้อผิดพลาด GRUB:“ ข้อผิดพลาด: ระบบแฟ้มที่ไม่รู้จัก”อย่างไรก็ตามฉันสามารถกู้คืน ...
- ฉันค้นพบว่าการกู้ภัย GRUB ไม่มี 'cd', 'cp' หรือคำสั่งระบบไฟล์อื่น ๆ ยกเว้นการเปลี่ยนแปลง 'ls'
ดังนั้นครั้งแรกที่ผมได้ไปหาพาร์ทิชันที่มี
/boot
ไดเรกทอรีที่มีvmlinuz
ไฟล์และไฟล์ภาพบูตอื่น ๆ ... (ประมาณจากความทรงจำของความพยายามที่ล้มเหลวเช่นเดียวกับบรรทัดว่างเพื่อความชัดเจนเพิ่ม 2014/07/10 โดย docsalvage)grub rescue> ls (hd0,4) (hd0,3) (hd0,2) (hd0,1) grub rescue> ls (hd0,4)/boot ... some kind of 'not found' message grub rescue> ls (hd0,3)/boot ... some kind of 'not found' message grub rescue> ls (hd0,2)/boot ... grub ... initrd.img-2.6.32-33-generic ... vmlinuz-2.6.32-33-generic
ผมพบว่า
/boot
ไดเรกทอรีที่มีvmlinuz
ไฟล์บนพาร์ติชันvmlinuz-2.6.32-33-generic
(hd0,2)
จากนั้นฉันบูตด้วยตนเองจากพรอมต์ 'grub rescue>' คำสั่งต่อไปนี้จะ ...
- ตั้งค่า
root
การใช้ไดเรกทอรีบนพาร์ติชัน/boot
(hd0,2)
linux
เคอร์เนลโมดูลโหลดvmlinuz-2.6.32-33-generic
ตั้งโมดูลที่ใช้ภาพเคอร์เนล- ชุด initrd (RAM ดิสก์เริ่มต้น)
initrd.img-2.6.32-33-generic
เพื่อใช้ภาพ - Boot Linux
- ตั้งค่า
grub rescue> set root=(hd0,2)/boot grub rescue> insmod linux grub rescue> linux (hd0,2)/boot/vmlinuz-2.6.32-33-generic root=/dev/sda2 grub rescue> initrd (hd0,2)/boot/initrd.img-2.6.32-33-generic grub rescue> boot
การบูทและขัดข้องกับพรอมต์ BusyBox ซึ่งไม่มีคำสั่งระบบไฟล์พื้นฐาน
จากนั้นฉันย้ายไฟล์ * .mod กลับไปที่
/boot/grub
ไดเรกทอรี ...busybox> cd /boot busybox> mv mod/* grub busybox> reboot
การรีบูตนั้นประสบความสำเร็จ แต่นั่นเป็นการทำงานมากมาย
มีวิธีที่ง่ายกว่านี้ไหม?
grub> linux (hd0,X)/boot/vmlinuz-a.b.c-d-generic root=/dev/sdaX
ที่X
เป็นพาร์ทิชันที่มี/boot
, a.b.c-d
เป็นรุ่นเคอร์เนล จากนั้นระบบของฉันบูตได้ดี! ขอบคุณ!