Does FreeBSD work on non-UEFI systems?

  • Thread starter Deleted member 79566
  • Start date
D

Deleted member 79566

Guest
I ran into a few threads here where people can't boot the memstick image on non-UEFI systems and none of them seem to be resolved except for one where the install image had to be modified. What's the deal? Can anybody confirm they have installed the default memstick image on a non-UEFI machine? I'm getting "Non-system disk" error
 
I ran into a few threads here where people can't boot the memstick image on non-UEFI systems and none of them seem to be resolved except for one where the install image had to be modified. What's the deal? Can anybody confirm they have installed the default memstick image on a non-UEFI machine? I'm getting "Non-system disk" error
Exactly which image are you trying and on what hardware?

I haven't had a problem, but there are many variables involved.

If you state exactly what environment you are using then maybe someone could say whether it works for them.
 
Exactly which image are you trying and on what hardware?

I haven't had a problem, but there are many variables involved.

If you state exactly what environment you are using then maybe someone could say whether it works for them.
I'm using `FreeBSD-14.1-RELEASE-amd64-memstick.img` and the hardware is just some run of the mill x86 from 2007 with an Athlon 64 X2 and 2 gigarams. This PC does have issues detecting memory sticks when booting, but I'm using the one stick that I know works with it. In fact I just re-imaged it with something else and it booted, so it's the FreeBSD image that's acting up
 
iCantInstallBSD I had installed FreeBSD 13.x on similar configuration, with 1 gigabyte of RAM.
Maybe your computer would need time to recognise the pen drive (mem stick)?
The memstick has worked fine with various Linux distros and I'm not the only one having this problem with FreeBSD specifically:

 
There are a lot of (broken) old-ish uefi and BIOS implementations on consumer hardware that don't adhere to the standards. I also had to deal with various systems over the years that will only boot from exactly *one* of their USB ports (mainly some acer junk...), sometimes even refusing to boot if anything else was plugged into other USB-ports.
Also USB3.0 sticks often cause problem on old 1.0/1.1 ports, and sadly many of those broken BIOS would only boot from such ancient ports even if they already had higher-spec ports. So try to find a (known good) USB 2.0 memory stick.

As a workaround I sometimes tried using PXE booting on systems that would completely fail to boot anything via USB - that being said, PXE is an even bigger dumpster fire of broken and rfc-ignorant implementations on consumer hardware...

The only reliable workaround always was to either put the installer image on a separate disk, or an mfsBSD image onto the disk I want to install to (if only a single drive can be attached to the system, e.g. some embedded systems or repurposed network/firewall appliances). I still have a stack of 32GB SATA (and one PATA) SSDs lying around from the time I had to occasionaly deal with such systems. Those small drives still can be fund dirt cheap, usually in batches of 5, 10 or more.


Also: did you try the 13.3-RELEASE memstick image?
Given that almost everything 'amd64' is capable of EFI booting and legacy boot is mainly kept around for 32bit on x86, which has become Tier2 and hence no longer gets a very high priority when it comes to testing, there's also a chance that the loader shipped with 14.X has some regression on non-EFI (or "non-EFI + amd64") platforms.
 
I'm using `FreeBSD-14.1-RELEASE-amd64-memstick.img` and the hardware is just some run of the mill x86 from 2007 with an Athlon 64 X2 and 2 gigarams. This PC does have issues detecting memory sticks when booting, but I'm using the one stick that I know works with it. In fact I just re-imaged it with something else and it booted, so it's the FreeBSD image that's acting up
Do you have a large hard disk, and what OSes do you have access to? And how familiar are you with FreeBSD?
 
There are a lot of (broken) old-ish uefi and BIOS implementations on consumer hardware that don't adhere to the standards. I also had to deal with various systems over the years that will only boot from exactly *one* of their USB ports (mainly some acer junk...), sometimes even refusing to boot if anything else was plugged into other USB-ports.
Also USB3.0 sticks often cause problem on old 1.0/1.1 ports, and sadly many of those broken BIOS would only boot from such ancient ports even if they already had higher-spec ports. So try to find a (known good) USB 2.0 memory stick.

As a workaround I sometimes tried using PXE booting on systems that would completely fail to boot anything via USB - that being said, PXE is an even bigger dumpster fire of broken and rfc-ignorant implementations on consumer hardware...

The only reliable workaround always was to either put the installer image on a separate disk, or an mfsBSD image onto the disk I want to install to (if only a single drive can be attached to the system, e.g. some embedded systems or repurposed network/firewall appliances). I still have a stack of 32GB SATA (and one PATA) SSDs lying around from the time I had to occasionaly deal with such systems. Those small drives still can be fund dirt cheap, usually in batches of 5, 10 or more.


Also: did you try the 13.3-RELEASE memstick image?
Given that almost everything 'amd64' is capable of EFI booting and legacy boot is mainly kept around for 32bit on x86, which has become Tier2 and hence no longer gets a very high priority when it comes to testing, there's also a chance that the loader shipped with 14.X has some regression on non-EFI (or "non-EFI + amd64") platforms.
Indeed none of my USB3 sticks work in this machine. It won't even post if there's one plugged in. For this I'm using an older one that's either 2.0 or older.

By "put the installer image on a separate disk" do you mean a hard disk? Can I just dd the memstick image into a SATA drive instead of a USB stick? If so that could work as I have spare SATA drives. Can you expand on the mfsBSD thing? How would I use that?

I just tried 13.3-RELEASE and got the same result: Non-system disk. Press any key to reboot.

Do you have a large hard disk, and what OSes do you have access to? And how familiar are you with FreeBSD?
Actually, yes, good point. How large is the hard drive?

It's a 250GB SSD. I wiped it last night but I've had several Linux distros over the years. I know Arch and variants and some Debian variants work on this machine, but not all. FreeBSD isn't the only OS installer that has refused to boot here when it was supposed to. Some Linux distros fail too, including Kali and a couple others that I can't recall. I'm brand new to BSD though. The only reason I haven't given up yet is I hear FreeBSD is great for firewalls, and this is going to be nothing but a firewall.
 
By "put the installer image on a separate disk" do you mean a hard disk? Can I just dd the memstick image into a SATA drive instead of a USB stick? If so that could work as I have spare SATA drives. Can you expand on the mfsBSD thing? How would I use that?
yes, just splat the image on a "real" disk. Just make sure to select the correct disk for installation and for legacy boot you might have to adjust the boot drive in BIOS.

mfsBSD is an in-memory minimal image of FreeBSD. You can either build images yourself [1] or use pre-built images [2].
It is especially useful if you don't have any other means of getting data "into" a machine than its sole internal disk (or flash memory), or no physical access at all. Then you can dd the image onto the storage the machine boots from, either by physically removinge the drive and attach it to another system or via a rescue system (e.g. on rented VPS/root servers).
The mfsBSD image loads an installer-environment into RAM and you can install onto the same disk the image was loaded from.

[1] https://github.com/mmatuska/mfsbsd/blob/master/BUILD.md
[2] https://mfsbsd.vx.sk/


edit:
If you want to use this system as a firewall you might want to consider/calculate its power draw. Those old CPUs don't have P/C-states and i'm also not sure if they supported clock rate adjustments - i.e. the CPU will always use its full rated TDP.
Also, depending on what you want to do on that firewall and what your uplink (or local link) speeds are, you might build yourself a bottleneck because this CPU is pretty weak by todays standards. I don't think you'll be able to do any meaningful firewalling or even routing anywhere near GBit line speed with that system, especially if NAT, let alone any en/decryption (e.g. for VPN) is involved..
Even a puny Celeron N5105 outperforms any Athlon 64 X2 by several orders of magnitude, while having a TDP of 10W, and usually drawing only a fraction of that under real-world loads. You can get those N5105 (or various other low-TDP CPUs) based systems with 4+ Gbit (or usually 2.5GBit nowadays) ports for as low as 100-150$.
 
It's a 250GB SSD. I wiped it last night but I've had several Linux distros over the years. I know Arch and variants and some Debian variants work on this machine, but not all. FreeBSD isn't the only OS installer that has refused to boot here when it was supposed to. Some Linux distros fail too, including Kali and a couple others that I can't recall. I'm brand new to BSD though. The only reason I haven't given up yet is I hear FreeBSD is great for firewalls, and this is going to be nothing but a firewall.

If it's a general purpose disk I would install Ventoy on it. See Thread 93513. You can install it with the option of reserving 200GB at the end of the disk, which you can partition as you wish and install numerous OSes on it and use Ventoy itself as a boot loader for any of the OSes installed or from the ISO repository on partition 1.

Incidentally there is a new release...

  • 2024/06/08 --- 1.0.99 release
  1. Upadte EFI boot files. Fix the Linpus Lite error on some computer.
  2. Fix the issue that VTOY_LINUX_REMOUNT can not take effect in latest openSUSE. (#2551)
  3. Fix the issue when installing on /dev/mdX device. (#2846)
  4. languages.json update
  5. Wana boot and install OS through network (PXE)? Welcome to my new project, iVentoy https://www.iventoy.com

I always grab the LInux tarball and run


and run Ventoy2Disk.sh from a Linux command prompt.

Unfortunately I have yet to figure out how to install it from FreeBSD ....
 
yes, just splat the image on a "real" disk. Just make sure to select the correct disk for installation and for legacy boot you might have to adjust the boot drive in BIOS.

mfsBSD is an in-memory minimal image of FreeBSD. You can either build images yourself [1] or use pre-built images [2].
It is especially useful if you don't have any other means of getting data "into" a machine than its sole internal disk (or flash memory), or no physical access at all. Then you can dd the image onto the storage the machine boots from, either by physically removinge the drive and attach it to another system or via a rescue system (e.g. on rented VPS/root servers).
The mfsBSD image loads an installer-environment into RAM and you can install onto the same disk the image was loaded from.

[1] https://github.com/mmatuska/mfsbsd/blob/master/BUILD.md
[2] https://mfsbsd.vx.sk/


edit:
If you want to use this system as a firewall you might want to consider/calculate its power draw. Those old CPUs don't have P/C-states and i'm also not sure if they supported clock rate adjustments - i.e. the CPU will always use its full rated TDP.
Also, depending on what you want to do on that firewall and what your uplink (or local link) speeds are, you might build yourself a bottleneck because this CPU is pretty weak by todays standards. I don't think you'll be able to do any meaningful firewalling or even routing anywhere near GBit line speed with that system, especially if NAT, let alone any en/decryption (e.g. for VPN) is involved..
Even a puny Celeron N5105 outperforms any Athlon 64 X2 by several orders of magnitude, while having a TDP of 10W, and usually drawing only a fraction of that under real-world loads. You can get those N5105 (or various other low-TDP CPUs) based systems with 4+ Gbit (or usually 2.5GBit nowadays) ports for as low as 100-150$.
That worked! I didn't think one could just boot a disk image from a hard drive like that. That's crazy. Thanks! It installed fine and all of my hardware is detected. :cool::beer:

As for power, yeah I know it's not the best option (not even the fans have power control), but I'm trying to stay away from newer tech. Too much phoning home, cloud stuff, intentional backdoors, and other behind-my-back shenanigans going on with modern hardware, including x86. I almost went with a RISCV SOC that looked almost perfect for the job and has much lower power draw, but the presence of a wifi chip was a deal breaker. (In fact part of the reason I need a firewall is to see who my computers are talking to when they're supposed to be turned off but the link light be blinking.)

I'll report back about the CPU after I set up the tunnel. I'm betting it should be fine for a basic sub-gigabit tunnel (I've given up waiting for fiber to hit the suburbs), no routing or encryption. I'm more worried it won't be able to handle two gigabit connections off the same PCIe slot on this less-than-top-of-the-line board, but we're about to find out.

I have several that mostly gather dust precisely for this purpose.
I watched all of mine die one by one over the years :'‑(
 
That worked! I didn't think one could just boot a disk image from a hard drive like that. That's crazy. Thanks! It installed fine and all of my hardware is detected. :cool::beer:

mfsBSD is one helluva program. It even includes tmux and support for mounting ext4 partiions. If you grab the -SE- releases, they include all you need to install FreeBSD. In fact, I have a script which will install FreeBSD on a new partition when booting from the mfsBSD ISO and connecting over ssh.
 
From my experience in the past, I can tell that the Installation with a CD, using the .iso image, always works fine, except for the CD/DVD drive is broken or cannot read an CD-RW properly.
 
Back
Top