# Upgraded from 10.3 to 13.1 - not sure if fully successful, halp!



## fr_sjo (Aug 29, 2022)

I recently powered up an old server from 2018 which was apparently running 10.3-release. I pretty much have zero memory on maintaining FreeBSD systems, so obviously performing a gung-ho upgrade using 'freebsd-update' seemed the right way forward...

So uname is reporting 13.1-release now. There was a notice about upgrading installed software due to shared libs. I ignored this and just ran 'freebsd-update install' again.


```
ld-elf.so.1: Shared object "libssl.so.7" not found, required by "pkg"
```

Now I am not sure if I have a high integrity installation - is it complete, I am not sure. If I run 'pkg', I get a shared lib error. This server was only used as a Plex media server.

Perhaps it'd just be quicker to nuke the boot vol and reinstall? I am sure the Plex installation is waaaay out of date too.

I have imported my zpool and upgraded, that seems to be working.

Taunt me, but help me. Thx.


----------



## SirDice (Aug 29, 2022)

Fix pkg(8) this way: `pkg bootstrap -f`. Then `pkg upgrade`.


----------



## fr_sjo (Aug 29, 2022)

SirDice said:


> Fix pkg(8) this way: `pkg bootstrap -f`. Then `pkg upgrade`.



Thanks, that helped. Doesn't look like the box has come up cleanly after the pkg upgrade though, so off to inspect it now.


----------



## fr_sjo (Aug 29, 2022)

Ut oh. Suspect upgrading my zroot may have broken something. I'm not familiar with this bootloader. Any advice appreciated.


----------



## SirDice (Aug 29, 2022)

fr_sjo said:


> Suspect upgrading my zroot may have broken something.


Yes. You should have updated your boot loader _before_ upgrading the zpool. Your old 10.3 bootloader won't be able to recognize the new OpenZFS from 13.x. 

You can update that bootloader using a 13.1 install media. Just boot that and drop to the shell. Depending on how the system is booted (UEFI or CSM boot) you need to update the freebsd-boot or efi partition.


----------



## fr_sjo (Aug 29, 2022)

SirDice said:


> Yes. You should have updated your boot loader _before_ upgrading the zpool. Your old 10.3 bootloader won't be able to recognize the new OpenZFS from 13.x.
> 
> You can update that bootloader using a 13.1 install media. Just boot that and drop to the shell. Depending on how the system is booted (UEFI or CSM boot) you need to update the freebsd-boot or efi partition.



Thanks, could you please provide clarity on what the file update could look like?


Edit: reading this now:









						Update your bootloader on FreeBSD 13 when you upgrade your zroot pool…
					

One of the nice new features of FreeBSD 13 is OpenZFS 2.0. OpenZFS 2.0 comes with zstd compression support. Zstd compression can have compression ratios similar to gzip with less CPU usage.  For my backups, I copy the most import data - /etc/, /home, … - first locally to a ZFS dataset. This data...



					stafwag.github.io


----------



## fr_sjo (Aug 29, 2022)

Bootloader fixed, thanks SirDice


----------



## mer (Aug 29, 2022)

That was a  lesson I learned a long time ago using ZFS root.  If you don't do a "zpool upgrade"  the old boot loader should be able boot, BUT I think 13.x was special case because of the switch from FreeBSD Native ZFS to OpenZFS2.0.
My general practice is now to read the Release notes 3 times, and update the boot loader before doing zpool upgrade.  It's easy to write "a new boot loader that can be backwards compatible" but you can't make an old bootloader aware of things not around when it was written (in general, you can try and plan for it, but you almost always run across something you missed).


----------



## SirDice (Aug 29, 2022)

mer said:


> My general practice is now to read the Release notes 3 times, and update the boot loader before doing zpool upgrade. It's easy to write "a new boot loader that can be backwards compatible" but you can't make an old bootloader aware of things not around when it was written (in general, you can try and plan for it, but you almost always run across something you missed).


Yeah, there's "backward compatibility", never "forward compatibility".


----------

