Normal.mod grub file

I installed new openwrt v22.03.6 on a USB while in my hd i had vyos. i want this openwrt boots as stand alone router servicing my home network as a gateway so i prepared my hd after 3 days test of openwrt, Partition and other things required and removed my vyos. Flash openwrt from USB to hd, reboot from hd and failed with message:
file /boot/grub/i386-pc/normal.mod not found
I never expected that openwrt can not boot as a stand alone system readily so i am not prepare for those things. My system is i386 bios boot. I have tried copying i386-pc folder from supergrub2 boot app, and message pop up again, this time asking for priority_queue.mod file. Booting from USB also get the same result. So what should i do? Is anyone here having grub's library files needed can send me those files?

Note:
After strugling around i got .mod files from supergrub2 and angryOS (github) and now it comes to message saying that symbol 'grub_verify_string' not found. So i need working grub library files for openwrt 22.03, could someone help?

how was openwrt written to the disk, and what was the source ?

frollic is probably spot on with his suspicion, but just to add some general context (in no particular order):

  • OpenWrt is supposed to boot from the bare iron as-is, and it usually does
  • /boot/grub/i386-pc/ is nothing you would see on an OpenWrt system, you should only see /boot/grub/boot.img, /boot/grub/core.img and /boot/grub/grub.cfg
  • /boot/grub/i386-pc/ suggests you have (previously) chosen an i386 based OS, don't do that unless you really need to run hardware that has no x86_64 support (as in is a ~15 years Atom N270 or older - and you really don't want to run that kind of hardware 24/7)
  • while grub by itself appears to be rather modular, it has very strict ABI dependencies amond its modules, you can't borrow some files from another distribution, build, etc.
  • the current version of OpenWrt is 23.05.2, don't start with an older version unless you have really strong reasons to (and you really shouldn't on x86)

I think its bios error or something, that all my setting on boot order changed and i don't know about that, now i can boot from usb flash disk. I still can not boot from hd though.

Sorry for the late answer

can't help you if you're not answering the questions ...

Its me i think who is ignorance, i didn't completely pay attention on my bios setting or even touch it since the first. It boots on usb fd but from hd it still can not work. But at least its booting now and i can do the rest with that hd, recheck it or something.

I think you are right openwrt is supposed to run from bare metal looking at the error bits shows up on first boot but why it don't make it run for stand alone x86 or x86_64 PC to be a good big router?


Host/Kernel/OS "gateprotect" running Linux 6.1.69 x86_64 [ OpenWrt SNAPSHOT r24683-4cc6e7192f ]
System         R & S Cybersecurity gateprotect GmbH GP-7543
CPU Info       4x Intel Celeron J1900 @ 1024 KB cache flags( sse3 ht nx lm vmx ) clocked at [ 2009.732 MHz ]
Videocard      Intel Atom Processor Z36xxx/Z37xxx Series Graphics & Display  tty resolution (  )
Network cards  4x Intel I211 Gigabit Network Connection, at ports: d000 c000 b000 a000 
Processes 122 | Uptime 19:25 | Memory 90.1/3832.1MB | HDD 32GB SATA Flash Size 32GB (0%used)

…works for me.

But it's hard to give advice, without you answering frollic's questions, because I still think your issues are to be found there (and/or not having selected the right image).

1 Like

I write using dd command, the source is from openwrt.org this is the link https://firmware-selector.openwrt.org/ & x86_64 is selected. I customize it with my ethernet & wifi driver, kmod-sky2 & kmod-iwl3945. Sorry to let you wait for this answer as its been so bussy here since this morning.

2 out of the 6 links on the firmware-selector page will (hopefully) get you a bootable system.

which one did you actually use, and what was the dd command ?

since you had openwrt running off the usb flash drive, why not dd the content of the flash drive to the hdd ?

It works on USB but i still have to look around what is exactly going on that i can not get it working on hd.

I use this command: dd if=openwrt-22.03.5-x86-...boot.img of=/dev/sda1 for boot img & The same for the rootfs with of=/dev/sda2, rootfs and boot img is using the extracted file from usb.

You mean the file name? The link name i have forgoten its a link which shows after you add a kmod & recompile on firmware-selector page. And this is the file name openwrt-22.03.6-11abb3f112aa-x86-64-generic-ext4-combined.img

fail, use /dev/sda

note this will wipe your current partition table.

1 Like

Nope its misstyped... I use that /dev/sda1 and /dev/sda2.

and I just said it won't work with sda1 (or 2) ?

Oh... I have to use sda, i just know it. So i have to prepare backup first.

Thank you so much frollic.

This topic was automatically closed 10 days after the last reply. New replies are no longer allowed.