Re: making a disk/slice bootable

From: Dan Mahoney <freebsd_at_gushi.org>
Date: Fri, 02 Sep 2022 00:20:39 UTC
Fdisk is for old-school partitions (where disks had only 1-4 primary partitions, and then subdivided those partitions into "slices" (bsdlabel).

I'm pretty sure the command you're looking for is:

gpart bootcode -b /boot/pmbr -p /boot/gptboot -i 1 ada1

In english, this says:

* Stick the "protective master boot record" on the root of the disk (/boot/pmbr)
* Write a partition boot label from the file specified...
* to this indexed partition (-i 1) 
* ...on ada1

From there, you may need to tell the stage 0 loader where to find your next bootable partition on the next boot() prompt.

-Dan


> On Sep 1, 2022, at 16:44, Dan Mahoney <freebsd@gushi.org> wrote:
> 
> 
> 
>> On Sep 1, 2022, at 16:41, paul beard <paulbeard@gmail.com> wrote:
>> 
>> I have been mirroring the virtual disk in a FreeBSD vm for a couple of years and the main disk got corrupted. The mirrored disk doesn't boot, says it can't find a kernel, so I think I missed out on an additional step, writing an MBR or boot sector, perhaps. 
>> 
>> The files are all there if I mount them from a VM with FreeBSD.I assume there is a way to make a mountable disk bootable.  fdisk and gpart are available but it's been a long time since I messed around with those. 
> 
> Let's start with the obvious: Can you post your disk layout?  Mirrored how?  Gmirror/ZFS/Hardware raid/etc?  MBR or Gpart?
> 
> What commands have you tried thusfar?
> 
> What does the boot so far look like (i.e. are you hitting the stage 0 boot loader, and getting the loader prompt?)
> 
> More info required, please, but this sounds very fixable.
> 
> -Dan