Menggunakan Grub
Jika Anda mendapatkan grub
prompt 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 ls
perintah untuk melihat-lihat partisi dan melihat kernel mana yang tersedia. The search
perintah bekerja sama. Anda juga dapat menggunakan penyelesaian tab .
set root=(hd0,1)
Tentu saja, ganti pengidentifikasi parisi dengan apa pun yang find
menunjukkan 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/sda1
dengan 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.cfg
berbasis 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, search
perintah tersebut menemukan partisi root menggunakan UUID sistem file atau pengidentifikasi, yang Anda mungkin tidak tahu; Anda dapat menggunakan --file --set /ubuntu/disks/root.disk
sebagai gantinya ( inilah dokumentasi resmi). Konfigurasi grub ini membuat disk virtual - "perangkat loopback" - disebut loop0
yang mewakili konten "file partisi", /ubuntu/disks/root.disk
pada partisi NTFS Anda. Dengan sedikit coba-coba, Anda seharusnya dapat membuat ini berfungsi.