ฉันลบโฟลเดอร์ / boot ผิดพลาดจากระบบไฟล์รีบูตและสิ่งที่ฉันได้รับตอนนี้คือ:
error: file '/boot/grub/i368-pc/linux.mod' not found.
grub rescue>
/boot
คือการรีบูตระบบก่อนที่จะได้รับการแก้ไข
ฉันลบโฟลเดอร์ / boot ผิดพลาดจากระบบไฟล์รีบูตและสิ่งที่ฉันได้รับตอนนี้คือ:
error: file '/boot/grub/i368-pc/linux.mod' not found.
grub rescue>
/boot
คือการรีบูตระบบก่อนที่จะได้รับการแก้ไข
คำตอบ:
อ๊ะ!
นี่คือสิ่งที่ต้องทำ:
บูตเครื่อง distro สด นี้สามารถเป็นแผ่นติดตั้งอูบุนตูหรืออีกคนหนึ่งเช่นKnoppix
ค้นหาไดรฟ์ / พาร์ติชั่นที่คุณติดตั้งระบบไฟล์รูทของคุณ การทำเช่นนี้คุณสามารถเปิดสถานีและเรียกใช้อย่างใดอย่างหนึ่งหรือsudo parted -l
sudo fdisk -l
หากคุณไม่สามารถบอกได้ให้แก้ไข คำถามของคุณและเพิ่มผลลัพธ์
สมมติว่าพาร์ติชันรูทของคุณที่คุณพบจากขั้นตอนสุดท้ายคือ/dev/sdxy
( x
ควรเป็นตัวอักษรอื่นและy
ควรเป็นตัวเลข) จากนั้นเรียกใช้คำสั่งต่อไปนี้ในเทอร์มินัล:
mkdir mnt
sudo mount /dev/sdxy mnt
sudo mount --bind /dev /mnt/dev
sudo mount --bind /proc /mnt/proc
sudo mount --bind /sys /mnt/sys
sudo chroot mnt
ตอนนี้คุณจะอยู่ในchroot
สภาพแวดล้อมซึ่งหมายความว่าการใช้คำสั่งที่นี่เทียบเท่ากับการเรียกใช้คำสั่งเหล่านี้ในระบบที่ติดตั้ง สิ่งแรกที่คุณต้องการทำคือติดตั้ง GRUB2 ลงในอุปกรณ์เพื่อคัดลอกไฟล์ที่ถูกต้องลงใน/boot
โฟลเดอร์ ในการดำเนินการดังกล่าวให้เรียกใช้สิ่งต่อไปนี้โดยใช้ไดรฟ์ที่พาร์ติชันของคุณเปิดอยู่ (เช่นลบ/dev/sdxy
หมายเลข ( y
)):
grub-install /dev/sdx
ตอนนี้คุณต้องการค้นหาแพ็คเกจที่คุณติดตั้งซึ่งมีไฟล์อยู่ในไดเรกทอรีบูตและติดตั้งใหม่ สิ่งนี้จะแทนที่อิมเมจเคอร์เนลที่ถูกลบไปจากสิ่งอื่น ๆ คำสั่งเพื่อค้นหาแพ็กเกจคือ:
dpkg -S /boot
และติดตั้งใหม่:
apt-get --reinstall install ...
ไหน...
จะถูกแทนที่ด้วยชื่อของแพคเกจจากคำสั่งแรก อย่ารวมเครื่องหมายจุลภาคเพียงแค่มีชื่อแพคเกจที่มีช่องว่างเพื่อแยก
ขั้นตอนนี้อาจต้องใช้อินเทอร์เน็ต (ยกเว้นแพ็คเกจที่มีอยู่ในแคชแล้ว) ดังนั้นตรวจสอบให้แน่ใจว่าคุณเชื่อมต่อหากมีปัญหา
เนื่องจากคุณจะลบเมล็ดของคุณและติดตั้งใหม่จึงควรเปิดใช้งานการปรับปรุง GRUB2 โดยอัตโนมัติ แต่ในกรณีที่พวกเขาไม่ได้คุณสามารถเรียกใช้:
update-grub
รีบูตและตอนนี้สิ่งที่ควรได้รับการแก้ไข ปัญหาหนึ่งที่ฉันมีครั้งล่าสุดที่ฉันทำสิ่งที่คล้ายกันคือ Windows ติดตั้งที่ไม่พบโดยupdate-grub
เมื่อทำงานในchroot
เนื่องจากข้อผิดพลาดos-prober
มา หากนี่เป็นปัญหาให้เรียกใช้sudo update-grub
อีกครั้งในระบบที่ได้รับการซ่อมแซม
/dev/sdax
/dev/sdxy