ด้วงมีภาพหลักขนาดเล็กที่โหลดในเวลาบูต ภาพแกนโหลดโมดูลแบบไดนามิกซึ่งให้การทำงานเพิ่มเติม i386-pc/normal.mod not found
แสดงด้วงที่ไม่สามารถโหลดnormal.modซึ่งเป็นโมดูลด้วงที่ให้คำสั่งปกติ ในการโหลดปกติคุณต้องบอกด้วงว่ามันอยู่ที่ไหน ในการทำเช่นนี้คุณสามารถใช้บรรทัดคำสั่งด้วง (aka Rescue Console) ด้วงจะเริ่มบรรทัดคำสั่งหากมีปัญหาในการบูทหรือคุณสามารถเริ่มด้วยตนเองโดยกดปุ่ม Shift ค้างไว้เมื่อด้วงเริ่ม (เพื่อบังคับให้แสดงเมนูด้วง) จากนั้นกดปุ่ม 'c'
การใช้ด้วงคุณสามารถสำรวจไดรฟ์พาร์ติชั่นและระบบไฟล์ คุณต้อง:
- ค้นหาการติดตั้งด้วงโดยใช้lsหรือsearch.file
- ตั้งค่าตัวแปร grub $ คำนำหน้าและ $ root
- โหลดและรันโมดูลปกติ
ตัวอย่าง
ต่อไปนี้เป็นเพียงตัวอย่าง คุณจะต้องปรับให้เข้ากับการตั้งค่าไดรฟ์และพาร์ติชันของคุณ
ปกติอยู่ที่ไหน ดูในสถานที่ที่น่าจะเป็น
grub> search.file /i386-pc/normal.mod
error: no such device: /i386-pc/normal.mod
grub> search.file /grub/i386-pc/normal.mod
error: no such device: /grub/i386-pc/normal.mod
grub> search.file /boot/grub/i386-pc/normal.mod
hd0,msdos1
หากคุณได้รับ"Unknown command 'search.file'"
สิ่งนี้หมายความว่าคำสั่ง search.file ไม่พร้อมใช้งาน นี่อาจเป็นเพราะคุณอยู่ในช่วงgrub rescue>
พร้อมรับคำและไม่grub>
พร้อมต์ ในกรณีนี้คุณยังคงสามารถใช้ls
คำสั่งและความรู้เกี่ยวกับเค้าโครงพาร์ติชันของคุณเพื่อค้นหาnormal.mod
ได้
พบได้ที่ (hd0, msdos1)
grub> ls (hd0,msdos1)/boot/grub/i386-pc/normal.mod
normal.mod
ทำไมด้วงไม่พบมัน
ตรวจสอบคำนำหน้า $ - ตำแหน่งที่แน่นอนของไดเรกทอรีด้วง
(นี่คือการตั้งค่าเมื่อด้วงถูกติดตั้งโดยด้วง - ติดตั้ง)
grub> echo $prefix
(hd0,msdos2)/boot/grub
ตรวจสอบ $ root - อุปกรณ์เริ่มต้นสำหรับเส้นทางที่ไม่รวม
ด้วงอุปกรณ์ในขั้นต้นตั้งค่านี้ให้อุปกรณ์จาก $ คำนำหน้า
grub> echo $root
hd0,msdos2
root และคำนำหน้าชี้ไปที่พาร์ติชันที่ไม่ถูกต้อง (hd0, msdos2)
ตั้งค่า $ root และ $ prefix ไปยังพาร์ติชันที่เราพบ normal.mod (hd0, msdos1)
grub> set root=(hd0,msdos1)
grub> set prefix=(hd0,msdos1)/boot/grub
โหลดและรันโมดูลปกติ
grub> insmod normal
grub> normal
คำสั่งอื่น ๆ ที่อาจเป็นประโยชน์
ls แสดงรายการอุปกรณ์และพาร์ติชันทั้งหมด
grub> ls
(hd0) (hd0,msdos5) (hd0,msdos1)
พาร์ทิชัน ls
grub> ls (hd0,msdos1)
Partition hd0,msdos1: Filesystem type ext* - Last modification time
2014-05-08 15:56:38 Thursday, UUID c864cbdd-a2ba-43a4-83a3-66e305adb1b6 -
Partition start at 1024KiB - Total size 6290432Kib
ls ระบบไฟล์ (note / at end)
grub> ls (hd0,msdos1)/
lost+found/ etc/ media/ bin/ boot/ dev/ home/ lib/ lib64/ mnt/ opt/ proc/
root/ run/ sbin/ srv/ sys/ tmp/ usr/ var/ vmlinuz initrd.img cdrom/
ดูข้างใน / boot / grub การ
มีอยู่ของไดเรกทอรี i386-pc หมายความว่านี่คือการติดตั้ง BIOS
ของไดเรกทอรี x86_64-efi จะบ่งบอกถึงการติดตั้ง EFI
grub> ls (hd0,msdos1)/boot/grub
i386-pc/ locale/ fonts/ grubenv grub.cfg
use your windows partition as your primary boot device
สร้างตารางพาร์ทิชันของคุณแล้ว ขั้นตอนสุดท้ายนั้นเป็นสิ่งจำเป็น ห้ามใช้ / boot อาจมีวิธีอื่น: ลองเปลี่ยนอุปกรณ์บู๊ตด้วยตนเองในระหว่างการเริ่มต้น อย่างไรก็ตามฉันไม่คิดว่ามันจะใช้งานได้ ปัญหานี้เป็นปัญหาที่เกิดขึ้นมานานและยังคงมีอยู่ใน Ubuntu จนถึงปัจจุบันรวมถึง 17.10 ขอขอบคุณ.