Bagaimana saya bisa memuat Ubuntu ketika yang saya miliki hanyalah Grub?


11

Jadi saya telah memutakhirkan Ubuntu dengan Kernel terbaru. Tetapi setelah upgrade dan setelah saya reboot Ubuntu, yang saya dapatkan hanyalah GRUB. Bagaimana cara memuat Ubuntu lagi ketika yang saya miliki hanyalah GRUB?

Saya menginstal Ubuntu menggunakan wubi.

Terima kasih banyak atas bantuannya


Apakah ini instalasi wubi atau instalasi normal?
karthick87

Ini sudah ketinggalan zaman saya percaya. Adakah yang bisa memberitahu saya bagaimana melakukan ini di grub2?

Jawaban:


16

Menggunakan Grub

Jika Anda mendapatkan grubprompt dan sistem dan kernel masih diinstal pada partisi, Anda dapat "secara manual" mem-boot sistem - yaitu tanpa bantuan grub.cfg yang berfungsi. Ini juga berfungsi dengan grub run dari media langsung. Untuk tujuan ini, grub menyertakan perintah rudimenter, yang dapat Anda gunakan untuk menemukan partisi dan mem-boot sistem.

find /vmlinuz

Ini akan memberi Anda seperti partisi (hd0,0). Anda juga dapat menggunakan lsperintah untuk melihat-lihat partisi dan melihat kernel mana yang tersedia. The searchperintah bekerja sama. Anda juga dapat menggunakan penyelesaian tab .

set root=(hd0,1)

Tentu saja, ganti pengidentifikasi parisi dengan apa pun yang findmenunjukkan kepada Anda.

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

Pilih gambar kernel dan gambar initrd, pasangan yang selalu perlu digunakan bersama. Untungnya Ubuntu menciptakan sepasang symlink di direktori root yang mengarah ke gambar dan initrd yang berfungsi. Perhatikan bahwa Anda perlu mengganti /dev/sda1dengan representasi partisi dalam skema yang digunakan oleh kernel Linux. Secara kasar, (hd0,1)berhubungan dengan /dev/sda1; (hd0,2) corresponds to/ dev / sda2 ;(hd1,1) sesuai dengan /dev/sdb1.

boot

Ini mem-boot kernel yang dipilih dari partisi yang dipilih. Setelah Anda berhasil mem-boot sistem Anda, Anda dapat menggunakannya untuk mengembalikan grub, seperti yang dijelaskan misalnya di sini .

Grub dengan Wubi

Di atas didasarkan pada asumsi bahwa Ubuntu diinstal secara teratur, yaitu di partisi yang terpisah. Saat Anda menulis, Anda menggunakan Wubi, yang berarti Anda menginstalnya ke file besar pada partisi Windows (NTFS) menggunakan teknik yang disebut "Lupin". Saya tidak melihat alasan mengapa ini pada prinsipnya tidak bisa berjalan, meskipun prosesnya lebih rumit. Berikut konten grub.cfgberbasis instalasi 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

Anda harus menyesuaikan ini dengan kasus khusus Anda. Dalam cuplikan ini, yang diambil dari instalasi 10,10, searchperintah tersebut menemukan partisi root menggunakan UUID sistem file atau pengidentifikasi, yang Anda mungkin tidak tahu; Anda dapat menggunakan --file --set /ubuntu/disks/root.disksebagai gantinya ( inilah dokumentasi resmi). Konfigurasi grub ini membuat disk virtual - "perangkat loopback" - disebut loop0yang mewakili konten "file partisi", /ubuntu/disks/root.diskpada partisi NTFS Anda. Dengan sedikit coba-coba, Anda seharusnya dapat membuat ini berfungsi.


4
Saya mendapatkanerror: unknown command find'.
Abdull

@Abdull - ini karena Anda menggunakan grub2 bukan legacy grub. Tekan Tab dua kali dan lihat perintah yang tersedia, atau pager = 1 \\ help
Yaroslav Nikitenko

Jika Anda menggunakan EFI, ganti linuxdan initrddengan resp. linuxefidan initrdefi.
Yaroslav Nikitenko
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.