I know that this topic was partly discussed in forum(s), but I couldn’t find a clear answer. We have a pure x86 UEFI system (no Legacy BIOS options at all) and really would like to run RouterOS as main software candidate, but it seems that we can’t find a way to install it. Any ideas/suggestions/guides? Is there any way to install it on strictly UEFI system?
Thanks for the prompt reply. I am not sure how it will work - we may try bare metal Type 1 hypervisor (something like ESXi), but we need RouterOS direct and undivided access to PCIe radio cards on board - I didn’t touch this stuff.lately and not sure if this is possible, i.e. dedicated to guest hardware. Last time I remember we tried to make PCI “transparent” to guest under VmWare environment but it did work for only certain video cards. Another thing is that usually hypervisor type 1 is not something you can get for free, which in turn will add significantly to price figure.
On a bigger picture, since almost all MB vendors started to move away from legacy BIOS towards UEFI (and some of them do have Legacy option in BIOS, or BIOS CSM extension, but some of the don’t), the question will pop up sooner or later regarding RouterOS support for UEFI. I can probably work my way through booting sequence, but first need to be able to install it on SATA SSD.
You are right. Unfortunately I cannot advise you more. It was just an idea provided the esxi or xen are for free. On the other side, ros should move forward to support uefi at least for the beginning. That’s obvious.
Create EFI directory in USB stick, create BOOT directory in EFI directory
Copy the following files from SYSLINUX distro (efi64 disrectory) - syslinux.efi and ldlinux.e64 ito /EFI/BOOT/ directory on USB stick.
Rename syslinux.efi in /EFO/BOOT to bootx64.efi Copy syslinux.cfg from root of USB to /EFO/BOOT directory.
Done. Now USB stick is recognized as EFI bootable media on pure EFI systems and actually boots. The problem now is that it hangs (?) after loading initrd.
This is what I see on monitor:
Loading linux… ok
Loading initrd.rgz… ok
and that’s it - at this point keyboard is dead. The only way out is hard reset (power off/on).
Any advice how I can debug it a bit more? What would a possible problem?