2

I'd like to boot a live USB for FreeBSD 11.1 in my UEFI firmware. I tried creating a live USB using:

dd if=FreeBSD-11.1-RELEASE-amd64-dvd1.iso of=/dev/sdc bs=4M status=progress && sync

Then I tried booting this USB and I got the GRUB message:

error: unknown filesystem.
Entering rescue mode.
grub rescue>

There's nothing wrong with this USB as I've managed to boot several distros from it and not that long ago (a month at most was the last time I did), with me placing those distros on the USB using much the same dd command.

I'm running Arch Linux and I do not have Windows, macOS or any non-Linux operating system installed so if your method involves using another operating system I'm afraid it is not applicable.

5

You are using the wrong image. At the Release Information page of FreeBSD 11.1, you can get the following info:

dvd1

This contains everything necessary to install the base FreeBSD operating system, the documentation, debugging distribution sets, and a small set of pre-built packages aimed at getting a graphical workstation up and running. It also supports booting into a "livefs" based rescue mode. This should be all you need if you can burn and use DVD-sized media.

--- snip ---

memstick

This can be written to an USB memory stick (flash drive) and used to do an install on machines capable of booting off USB drives. It also supports booting into a "livefs" based rescue mode. There are no pre-built packages.

As one example of how to use the memstick image, assuming the USB drive appears as /dev/da0 on your machine something like this should work:

    # dd if=FreeBSD-11.1-RELEASE-amd64-memstick.img \
      of=/dev/da0 bs=1m conv=sync

Be careful to make sure you get the target (of=) correct.

So, you have things to fix/adapt to make this work with Linux:

  • Image must be FreeBSD-11.1-RELEASE-amd64-memstick.img not dvd1.
  • Block size must be bs=1m not 4m with memstick image. Use capital M on Linux dd to represent the 1024*1024 size, the same as by using m on FreeBSD dd.
  • Change the output file to the one that represents you pendrive, like of=/dev/sdc as you have shown at the question.
  • On Linux USBs are always denoted as /dev/sdX, where X is the name of the drive. Thanks though, the dvd1 image works well in VirtualBox and as Linux ISO images always work on USBs if they work in VirtualBox (from my experience with almost a hundred distros) I assumed it'd be the same. Thanks for teaching me that my assumption was faulty. Once I confirm your solution works I shall accept. – BH2017 Feb 14 '18 at 9:56
  • Oh and by-the-way bs=1m doesn't work, what you were looking for was bs=1M, as with 1m I get dd: invalid number: ‘1m’. – BH2017 Feb 14 '18 at 10:05
  • 2
    As i've quoted the documentation and tried to not change it. You will have to adapt that of= to the one that corresponds to your output device, that is probably /dev/sdc. I'll put that on the answer too. There is no problem on assume that an ISO file is hibrid(dvd and usb), but as a matter of curiosity, that was not true also for Debian some years ago, where you had to use Unetbootin or other tools to extract iso contents ;). Virtualbox emulates the cd driver so, it shall work. – user34720 Feb 14 '18 at 10:05
  • I probably wasn't a Linux user 'some years ago', depending on your definition of 'some'. – BH2017 Feb 14 '18 at 10:06
  • Right. and, use 1M on Linux dd command ;) – user34720 Feb 14 '18 at 10:07

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.