ZFS i/o error - all block copies unavailable after freebsd-update

schojo

New Member

Reaction score: 2
Messages: 16

Hi all,
i just did a freebsd-update fetch, freebsd-update install and reboot from 13.0-RELEASE to 13.0-RELEASE-p2 and get greeted with this:
IMG_20210614_103829.jpg


Just yesterday everything was fine, zpool status had all four hard disks ONLINE... what can i do? :/
 

covacat

Well-Known Member

Reaction score: 170
Messages: 365

can you boot from removable media ?
how old is your efi partition code ? it comes from a 13 install or earlier ?
 
OP
schojo

schojo

New Member

Reaction score: 2
Messages: 16

can you boot from removable media ?
how old is your efi partition code ? it comes from a 13 install or earlier ?
I am making one as we speak so i can at least do SOMETHING on this machine...

Not sure what you mean by efi partition code but this is a machine coming from 12.1 and doing upgrades ever since.
 

SirDice

Administrator
Staff member
Administrator
Moderator

Reaction score: 11,560
Messages: 37,878

but this is a machine coming from 12.1
Did you upgrade your pool after you upgraded to 13.0? And did you also update your boot partition and/or EFI boot? You might still have an older boot partition that cannot read the new ZFS.
 
OP
schojo

schojo

New Member

Reaction score: 2
Messages: 16

Did you upgrade your pool after you upgraded to 13.0? And did you also update your boot partition and/or EFI boot? You might still have an older boot partition that cannot read the new ZFS.
pretty sure that i did, yes.
 

SirDice

Administrator
Staff member
Administrator
Moderator

Reaction score: 11,560
Messages: 37,878

At least grab a 13.0-RELEASE install media, boot from that and see if you can import the pool.
 
OP
schojo

schojo

New Member

Reaction score: 2
Messages: 16

At least grab a 13.0-RELEASE install media, boot from that and see if you can import the pool.
zpool list is not finding any, but zpool import gives me the message below - should i try to?

IMG_20210614_115506.jpg
 

SirDice

Administrator
Staff member
Administrator
Moderator

Reaction score: 11,560
Messages: 37,878

You probably need to force it as the pool is still registered on the original system (that's what it's telling you). You'll also need to add -R or else the mountpoints are going to clobber all over the boot disk's mountpoints.
 

covacat

Well-Known Member

Reaction score: 170
Messages: 365

install the 13.x loader.efi in you efi boot partition
then you'll probably be able to boot from your zfs pool
mount -t msdosfs /dev/ada0px /mnt
cp /boot/loader.efi /mnt/EFI/BOOT/BOOTX64.efi
 

SirDice

Administrator
Staff member
Administrator
Moderator

Reaction score: 11,560
Messages: 37,878

Yeah, I suspect you only updated the bootcode in the freebsd-boot partition, and forgot to update the EFI bootcode.
 
OP
schojo

schojo

New Member

Reaction score: 2
Messages: 16

zpool import -fR bootpool does something for a second (including hdd led flickering) and then that's it. zpool list and zpool status are empty still. should've noted this before but the main pool is geli encrypted, not sure about the bootpool - this was an install-and-forget setup and always worked without any problems 😞
 
OP
schojo

schojo

New Member

Reaction score: 2
Messages: 16

install the 13.x loader.efi in you efi boot partition
then you'll probably be able to boot from your zfs pool
mount -t msdosfs /dev/ada0px /mnt
cp /boot/loader.efi /mnt/EFI/BOOT/BOOTX64.efi
that would work - in theory. i have 4 harddisks so i need to copy that to ada0p1, ada1p1....ada3p1 - correct?
The problem is this - "no space left on device". That doesn't sound like fun at all:
IMG_20210614_124655.jpg
 

Emrion

Aspiring Daemon

Reaction score: 208
Messages: 670

I think that bootpool means this is a MBR installation with zfs on root.
Give us the result of gpart show.
 

Emrion

Aspiring Daemon

Reaction score: 208
Messages: 670

Yes, all the drives, it's more secure. it's indicated in my howto.
 

SirDice

Administrator
Staff member
Administrator
Moderator

Reaction score: 11,560
Messages: 37,878

Make sure you have zfs_load="YES" in /boot/loader.conf.
 
OP
schojo

schojo

New Member

Reaction score: 2
Messages: 16

Make sure you have zfs_load="YES" in /boot/loader.conf.
I'm kinda clueless right now on how i can access my /boot/loader.conf right now - any leads on that?
Also, why would it disappear from there? 🤔
 

covacat

Well-Known Member

Reaction score: 170
Messages: 365

can you drop to loader prompt ?
if you can type load zfs
then boot

docs are not very clear but it seems that simple loader cant do with xxx_load="YES"
 

SirDice

Administrator
Staff member
Administrator
Moderator

Reaction score: 11,560
Messages: 37,878

If I recall correctly you need to load the kernel first. But yes, drop to the loader prompt, load the kernel, load zfs, then boot.

Code:
load /boot/kernel/kernel
load /boot/kernel/zfs.ko
boot
Once the system is booted you can easily edit /boot/loader.conf.
 
OP
schojo

schojo

New Member

Reaction score: 2
Messages: 16

If I recall correctly you need to load the kernel first. But yes, drop to the loader prompt, load the kernel, load zfs, then boot.

Code:
load /boot/kernel/kernel
load /boot/kernel/zfs.ko
boot
Once the system is booted you can easily edit /boot/loader.conf.
Well, that got me somewhere ... it "works" - i can see lots of dmesg afterwards but then crashes at the end and reboots. Too fast too read sadly :/
 
Top