ZFS upgraded features on boot pool

Not sure what to do about this, at the end fo the process it required some boot modifications.. unfortunately it looks like it modified the wrong gpt partition..

so now the system wont boot..

any idea how i can identify the boot device and fix it?

thanks
 
lsdev shows

disk devices
disk0:
disk0p1: efi
disk0p2: boot
disk0p3: swap
disk0p4: zfs
..

disk 1-4 is another pool. disk0 device is a usbdrive that the system runs on.
 
Not sure what to do about this, at the end fo the process it required some boot modifications.. unfortunately it looks like it modified the wrong gpt partition..

so now the system wont boot..

any idea how i can identify the boot device and fix it?

thanks

I believe the problem was with the final touch

gpart bootcode -b /boot/pmbr -p /boot/gptzfsboot -i 1 da0

so if anyone can tell me how to reverse this that would be great..

thanks
 
You wrote legacy bootcode into the efi partition.

To rewrite the EFI bootcode use:
gpart bootcode -p /boot/boot1.efifat

Since you also wrote an (p)MBR onto disk, make sure legacy booting (CSM) is completely disabled in your BIOS, or it will pick up the MBR and then fail to find the corresponding legacy bootcode.
 
Hi Guys thanks,

with uefi disabled it does boot. however the gpart bootcode -p /boot/boot1.efifat returns invalid argument.

zpol status shows both pools as expected.. the boot device is right.. however my main storage pool now requires upgrades.. lol terrified to upgrade that pool as it contains a lot of data..


gpart list
Geom name: da0
modified false
state ok
fwheads 255
fwsectors 63
last 208715200
first 40
entries 152
scheme gpt
providers

name da0p1
mediasizee 200M
sector 512
stripesize 4096
stripeoffset 0
mode r0w0e0
efimedia HD (1, GPT, some hash)
rawtype (some hash)
raw id: (some hash)
lable efiboot0
length 209715200
offset 20480
type efi
index 1
end 409639
start 40

name da0p2
mediasize 512k
sector 512
stripe offset 0
mode r0w0e0
efimedia HD (2, GPT, some hash)
rawtype (some hash)
raw id: (some hash)
lable efiboot0
length 209715200
offset 20480
type efi
index 1
end 410663
start 409640

name da0p3
mediasizee 2G
sector 512
stripesize 4096
stripeoffset 0
mode r0w0e0
efimedia HD (3, GPT, some hash)
rawtype (some hash)
raw id: (some hash)
lable efiboot0
length 209715200
offset 20480
type freebsd-swap
index 1
end 1605951
start 4116458

name da0p4
mediasizee 110G
sector 512
stripesize 4096
stripeoffset 0
mode r0w0e0
efimedia HD (1, GPT, some hash)
rawtype (some hash)
raw id: (some hash)
lable zfs0
length 209715200
offset 20480
type freebsd-zfs
index 1
end 409639
start 40

consumers
name da0
mesdia size 112G
secttors
stripsize
stripeoffset
mode r1w1e2


<cut>
there are a bunch of rust devices after this device


not sure if it makes a difference..

ls -la /boot | grep boot
boot dec13
boot0 june21
boot0sio june21
boot1 june21
boot1.efi dec13
boot1.efifat dec13
boot2 dec13

guessing these are back ups and the initial install ?

thanks again for the help.
 
You need to point where is the efi partition
first check with
gpart show
and then install the partcode image with
gpart bootcode -p /boot/boot1.efifat -i 1 da0
or
dd if=/boot/boot1.efifat of=/dev/da0p1
 
Last edited:
Back
Top