ฉันจะโหลด Ubuntu ได้อย่างไรเมื่อฉันมี Grub ทั้งหมด?


11

ดังนั้นฉันจึงอัพเกรด Ubuntu ด้วยเคอร์เนลล่าสุด แต่หลังจากการอัพเกรดและหลังจากที่ฉันรีบูต Ubuntu สิ่งที่ฉันได้รับคือด้วง ฉันจะโหลดอูบุนตูได้อย่างไรอีกครั้งเมื่อทั้งหมดที่ฉันมีคือด้วง?

ฉันติดตั้ง Ubuntu โดยใช้ wubi

ขอบคุณสำหรับความช่วยเหลือ


นี่เป็นการติดตั้ง wubi หรือการติดตั้งปกติหรือไม่
karthick87

สิ่งนี้ล้าสมัยฉันเชื่อว่า ใครสามารถบอกฉันถึงวิธีการทำใน grub2

คำตอบ:


16

ใช้ด้วง

หากคุณได้รับgrubพรอมต์และระบบและเคอร์เนลยังคงติดตั้งอยู่ในพาร์ติชันคุณสามารถ "บู๊ตด้วยตนเอง" ในการบู๊ตระบบ - โดยไม่ต้องใช้ grub.cfg ที่ใช้งานได้ นอกจากนี้ยังใช้งานได้กับด้วงวิ่งจากสื่อสด ด้วยเหตุนี้ด้วงนี้จึงมีคำสั่งพื้นฐานซึ่งคุณสามารถใช้เพื่อค้นหาพาร์ติชันและบูตระบบ

find /vmlinuz

สิ่งนี้จะให้พาร์ติชันเช่นคุณ (hd0,0) คุณยังสามารถใช้lsคำสั่งเพื่อกระตุ้นพาร์ทิชันและดูว่ามีเมล็ดใดบ้าง searchคำสั่งทำงานคล้าย คุณยังสามารถใช้การเติมแท็บได้ด้วย

set root=(hd0,1)

แน่นอนแทนที่ตัวบ่งชี้ parition ด้วยสิ่งที่findแสดงให้คุณเห็น

linux /vmlinuz root=/dev/sda1
initrd /initrd.img

เลือกเคอร์เนลอิมเมจและอิมเมจอิมเมจซึ่งจำเป็นต้องใช้คู่กัน โชคดีที่อูบุนตูสร้าง symlink ในไดเรกทอรีรากซึ่งชี้ไปที่รูปภาพทำงานและเริ่มต้น โปรดทราบว่าคุณต้องแทนที่/dev/sda1ด้วยการแสดงพาร์ติชันในแบบแผนที่ใช้โดยเคอร์เนล Linux ประมาณ(hd0,1)สอดคล้องกับ/dev/sda1; (hd0,2) corresponds to/ dev / sda2 ;(hd1,1) /dev/sdb1สอดคล้องกับ

boot

นี่จะบู๊ตเคอร์เนลที่เลือกจากพาร์ติชันที่เลือก เมื่อคุณได้มีการจัดการในการบูตระบบของคุณคุณสามารถใช้ที่จะเรียกคืนด้วงที่เป็นรายละเอียดเช่นที่นี่

ด้วงกับ Wubi

ข้างต้นได้รับการสันนิษฐานจากสมมติฐานว่า Ubuntu ได้รับการติดตั้งเป็นประจำนั่นคือในพาร์ติชันแยกต่างหาก ในขณะที่คุณเขียนคุณใช้ Wubi ซึ่งหมายความว่าคุณติดตั้งลงในไฟล์ขนาดใหญ่บนพาร์ติชัน Windows (NTFS) โดยใช้เทคนิคที่เรียกว่า "Lupine" ฉันไม่เห็นเหตุผลว่าทำไมสิ่งนี้ถึงใช้งานไม่ได้ในหลักการแม้ว่ากระบวนการจะซับซ้อนกว่านี้ นี่คือเนื้อหาของการgrub.cfgติดตั้ง Wubi:

insmod part_msdos
insmod ntfs
set root='(hd0,msdos5)'
search --no-floppy --fs-uuid --set be300f9c300f5ab3
loopback loop0 /ubuntu/disks/root.disk
set root=(loop0)
linux /boot/vmlinuz root=/dev/sda1 loop=/ubuntu/disks/root.disk
initrd /boot/initrd.img

คุณจะต้องปรับให้เข้ากับกรณีของคุณ ในตัวอย่างนี้นำมาจากการติดตั้ง 10.10 searchคำสั่งค้นหาพาร์ติชันรูทโดยใช้ UUID ของระบบไฟล์หรือตัวระบุซึ่งคุณอาจไม่ทราบ คุณสามารถใช้--file --set /ubuntu/disks/root.diskแทน ( นี่คือเอกสารอย่างเป็นทางการ) การกำหนดค่าด้วงนี้สร้างดิสก์เสมือน - "อุปกรณ์ย้อนกลับ" - เรียกloop0ซึ่งแสดงถึงเนื้อหาของ "พาร์ทิชันไฟล์" /ubuntu/disks/root.diskบนพาร์ติชัน NTFS ของคุณ ด้วยการลองผิดลองถูกคุณจะสามารถทำงานนี้ได้


4
ฉันได้รับerror: unknown command find'.
Abdull

@Abdull - นี่เป็นเพราะคุณใช้ grub2 แทน grub แบบเดิม กด Tab สองครั้งและดูคำสั่งที่มีหรือ pager = 1 \\ help
Yaroslav Nikitenko

หากคุณใช้ EFI ให้เปลี่ยนlinuxและเปลี่ยนinitrdด้วย และlinuxefi initrdefi
Yaroslav Nikitenko
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.