Pertanyaan error: file '/grub/i386-pc/normal.mod' tidak ditemukan


error: file '/grub/i386-pc/normal.mod' not found.
grub rescue>

Apa yang dapat saya? Saya hanya duduk dan menatapnya.

Saya menemukan netbook lama saya (Dell Inspiron 1010) yang tidak saya gunakan selama sekitar empat tahun. Saya mengganti Windows XP dengan Ubuntu 12.10. Saya menggunakan drive USB bootable saya. Saya menginstal dan reboot. Saya mendapat pesan itu normal.mod tidak ditemukan.

Apa yang harus saya lakukan? Mengetik exit, reboot, atau quit? Haruskah saya menginstal ulang?


34
2018-03-11 04:43


asal


JAWABAN DI BAWAH PERNAH BEKERJA. INI BEKERJA: instal ulang OS Anda, pergi ke "melakukan sesuatu yang lain", buat tabel partisi Anda, kemudian use your windows partition as your primary boot device. Langkah terakhir itu penting. JANGAN GUNAKAN / boot. Mungkin ada solusi lain: cobalah mengganti perangkat boot Anda secara manual saat startup; Namun, saya tidak berpikir itu akan berhasil. Ini adalah masalah lama yang telah berlangsung di Ubuntu dan termasuk 17.10. Terima kasih. - Wolfpack'08
Tak satu pun dari instruksi ini berhasil bagi saya. Bahkan, menggunakan berbagai alat pemulihan membuat masalah menjadi lebih buruk. Saya bisa mendapatkan semacam grub diinstal ulang tetapi karena saya menggunakan lvm2, kernel gagal untuk memulai. Jika Anda menggunakan lvm2 untuk apa saja, maka ketika masalah ini terjadi, Anda harus menginstal ulang OS. Sejauh yang saya tahu, tidak ada pemulihan dari kernel update gagal + kombinasi grub + lvm2. lvm2 melihat dukungan resmi sangat sedikit meskipun didorong untuk Ubuntu Server LTS pada satu titik. Saya mencadangkan data saya dan menginstal ulang OS dan tidak akan menyentuh lvm2 lagi. Mempelajari pelajaran saya. - CubicleSoft


Jawaban:


Grub memiliki gambar inti kecil yang dimuat saat boot. Gambar inti secara dinamis memuat modul yang menyediakan fungsionalitas lebih lanjut. i386-pc/normal.mod not found menunjukkan bahwa grub tidak dapat memuat normal.mod, yang merupakan modul grub yang menyediakan perintah normal. Untuk memuat normal.mod Anda harus memberi tahu grub di mana tempatnya. Untuk melakukan ini, Anda dapat menggunakan baris perintah grub (alias Rescue Console). Grub akan memulai baris perintah jika ada masalah saat boot, atau Anda dapat memulainya secara manual dengan menahan tombol shift saat grub mulai (untuk memaksa menampilkan menu grub), lalu menekan tombol 'c'.

Menggunakan grub Anda dapat menjelajahi drive, partisi, dan filesystem. Kamu butuh:

  • temukan menginstal grub menggunakan ls atau search.file
  • mengatur variabel grub $ prefix dan $ root
  • memuat dan menjalankan modul normal

Contoh

Berikut ini hanyalah sebuah contoh. Anda perlu menyesuaikannya dengan drive lokal dan pengaturan partisi.

dimanakah normal.mod? lihat di beberapa lokasi kemungkinan

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

Jika kamu mendapatkannya "Unknown command 'search.file'" ini berarti bahwa perintah search.file tidak tersedia. Ini mungkin karena Anda berada di grub rescue> cepat dan tidak grub> cepat. Dalam hal ini Anda masih dapat melanjutkan dan menggunakan ls perintah dan pengetahuan Anda tentang tata letak partisi Anda untuk menemukan normal.mod.

menemukannya di (hd0, msdos1)

grub> ls (hd0,msdos1)/boot/grub/i386-pc/normal.mod
normal.mod

kenapa grub tidak menemukannya?
periksa $ prefix - lokasi absolut dari direktori grub
(ini diatur ketika grub diinstal oleh grub-install)

grub> echo $prefix
(hd0,msdos2)/boot/grub

periksa $ root - perangkat default untuk jalur yang tidak termasuk perangkat
grub awalnya menetapkan ini ke perangkat dari $ prefix

grub> echo $root
hd0,msdos2

root dan prefix mengarah ke partisi yang salah (hd0, msdos2)
atur $ root dan $ prefix ke partisi tempat kami menemukan normal.mod (hd0, msdos1)

grub> set root=(hd0,msdos1)
grub> set prefix=(hd0,msdos1)/boot/grub

memuat dan menjalankan modul normal

grub> insmod normal
grub> normal

Beberapa perintah lain yang mungkin bisa membantu

ls daftar semua perangkat dan partisi

grub> ls
(hd0) (hd0,msdos5) (hd0,msdos1)

partisi 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 filesystem (catatan / akhir)

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/

lihat ke dalam / boot / grub
keberadaan direktori i386-pc berarti ini adalah instalasi BIOS
Kehadiran direktori x86_64-efi akan menunjukkan instalasi EFI

grub> ls (hd0,msdos1)/boot/grub
i386-pc/ locale/ fonts/ grubenv grub.cfg


32
2018-05-08 17:58



+1 Setelah mengikuti langkah-langkah ini untuk boot ke instalasi ubuntu saya, saya berlari sudo grub-install /dev/sdX untuk menginstal grub saya. Saya pikir menginstal LVM bingung grub saya entah bagaimana. - DavidG
Saya kira jika Anda mendapatkan "Unknown command 'search-file' seperti yang baru saja saya lakukan, sudah waktunya untuk menyerah. Saran saya untuk orang-orang tidak pernah menginstal Ubuntu tanpa DVD Windows Recovery. Seperti yang saya baru tahu, memiliki partisi pemulihan adalah tidak cukup begitu Grub menjadi kacau. Dan juga, jangan pernah menginstal Ubuntu pada komputer Windows orang lain, karena jika itu mengacaukan mereka akan benar-benar marah. - Scooter
@Scooter Lihat jawaban ini untuk petunjuk tentang menginstal ulang Grub dengan mem-boot live CD / USB. - bain
@bain Terima kasih atas jawabannya. Dalam kasus saya melakukan instal ulang dari disk iso Ubuntu. Ubuntu tahu bahwa grub itu kacau atau mungkin hanya secara otomatis menulis di atasnya, tetapi itu redid ke tempat saya kembali untuk bisa boot ke Windows lagi. - Scooter
Shell penyelamatan Grub tampaknya tidak mendukung perintah-perintah ini. "Pencarian perintah tidak dikenal '.' '" - Cerin


Soal ini pada mesin sore ini. Tampaknya salah satu penyebab masalah ini adalah penginstal berpikir bahwa Anda memiliki boot aman EFI, ketika Anda tidak dan karena itu memuat file GRUB yang salah.

Yang perlu Anda lakukan adalah menginstal GRUB 2. Untuk melakukan ini, Anda perlu boot ke instance langsung, pasang partisi root Anda dan instal.

Dari instance langsung, temukan partisi tempat partisi root Anda dimuat. GParted akan memberi tahu Anda ini, atau Anda bisa menggunakannya

sudo fdisk -l

Pergi untuk partisi di mana ubuntu diinstal.

Setelah Anda memiliki partisi, Anda perlu memasangnya. Dengan asumsi partisi root ada di / dev / sda5, itu akan menjadi:

sudo mount /dev/sda5 /mnt

Kemudian instal GRUB 2

sudo grub-install /dev/sda --root-directory=/mnt [gunakan salin dan tempel untuk yang ini karena ada beberapa ruang yang Anda perlukan.]

Dengan asumsi ini adalah masalah Anda, maka Anda hanya harus bisa reboot dan semuanya akan berfungsi dengan baik.

Solusi asli untuk ini adalah dari sini: http://ubuntujournal.blogspot.com/2012/11/fix-new-install-of-ubuntu-1210-wont-boot.html


26
2018-04-26 15:58



Tidak bekerja untukku. Saya memiliki masalah yang sama dan saya masih mencari solusi. - ExpatEgghead
Bekerja untukku. Terima kasih - zzeroo
- root-direktori sekarang --boot-direktori di grub2 - bain
Perbaikan mudah lainnya yang berhasil bagi saya adalah menyalin cadangan grup yang ada di /etc/grub.d/backup ke / boot / grub. Periksa readme terlampir untuk folder dan jalur yang sesuai. - jhexp
Ini berhasil untukku! Terima kasih, oh, terima kasih! - enchance


Saya tidak menemukan informasi tersebut di forum, jadi saya ingin berbagi beberapa informasi meskipun fakta bahwa pertanyaan ini telah diajukan sejak lama:

Jika Anda memiliki partisi besar (misalnya 1TB) dengan Ubuntu terinstal dan Anda tidak mengalokasikan satu tambahan untuk / boot /, itu bisa menjadi alasan kesalahan tersebut. Ketika GRUB dimulai, ia menggunakan driver BIOSdisk untuk membaca driver normal dari direktori / boot / grub /. Kadang-kadang, direktori ini dapat secara fisik terletak di hard drive di suatu tempat setelah maksimum didukung oleh sektor biosdisk. Masalah ini dapat muncul, misalnya, setelah peningkatan sistem. Juga, saya selalu menghadapi masalah itu setelah instalasi baru Ubuntu 13.10, tetapi bisa berbeda, karena tergantung pada motherboard / bios.

Anda dapat memeriksa bahwa menggunakan pemulihan grub - setelah menyetel PREFIX dan ROOT yang benar, coba ke ls / boot - jika Anda tidak melihat apa pun, tetapi dapat melihat file di sana saat melakukan booting dari live cd / flash drive - daripada Anda memiliki masalah yang dijelaskan di atas .

Anda dapat melakukan hal-hal yang berbeda untuk membuat sistem dapat di-boot, tetapi satu-satunya cara untuk menghindari masalah tersebut di masa mendatang (selama dist-upgrade) adalah dengan meletakkan / mem-boot direktori pada partisi kecil yang terpisah.


2
2017-11-14 19:08