Upgrading from releng/13.1 to stable/14

Hi,
I want to upgrade my freebsd server from 13.1-RELEASE FreeBSD 13.1-RELEASE releng/13.1-n250148-fc952ac2212 GENERIC amd64 to stable/14 (14.0-RELEASE). Has anyone tried it and faced any problems ?
I wonder if upgrading from releng to stable needs some extra steps or is it same as normal upgrade procedure.

Thanks in Advance.
 
why would you want to run STABLE on a (production) server?

If it's a development/test system and you have a valid reason for running a development snapshot on it: the upgrade procedure is the same as for any other major upgrade.
 
Shouldn't we go with stable release for production env ? Stable means stable i.e. it suits the production environment, isn't it ?
Edited
Oh, google helped,
FreeBSD-STABLE is the development branch from which major releases are made. Changes go into this branch at a slower pace and with the general assumption that they have first been tested in FreeBSD-CURRENT
 
Shouldn't we go with stable release for production env ? Stable means stable i.e. it suits the production environment, isn't it ?
It isn't. RELEASE is stable one and STABLE one is before CURRENT which is a development version. You can think like STABLE one is for testing commits from CURRENT before they go into RELEASE.
 
So it is normal to run FreeBSD 13.1-RELEASE releng/13.1-n250148-fc952ac2212 GENERIC amd64 in production ?
is there a specific detail about releng running in production ?
 
stable/14 (14.0-RELEASE).
stable/14 is NOT 14.0-RELEASE.

branches:
releng/14.0 => 14.0-RELEASE (plus security/errata)
releng/14.1 => 14.1-RELEASE (plus security/errata)
stable/14 => 14-STABLE (supported development version)
main => 15-CURRENT (unsupported development version)


So it is normal to run FreeBSD 13.1-RELEASE releng/13.1-n250148-fc952ac2212 GENERIC amd64 in production ?
No, because 13.1-RELEASE is EoL since July 2023. 13.2-RELEASE will be EoL in a few weeks (end of June 2024).


is there a specific detail about releng running in production ?
"releng" are the -RELEASE versions. These versions are production ready, if they weren't they wouldn't have been released. Only the latest minor version of a major branch is supported. A major branch will get at least 5 years worth of support.
 
Shouldn't we go with stable release for production env ? Stable means stable i.e. it suits the production environment, isn't it ?

no need to ask google or some "AI" junk:

Production Quality​


RELEASE versions of FreeBSD are the end result ofrelease engineering.

[...]

Development and Testing​


Pre-RELEASE versions of FreeBSD, not intended foruse in production environments:
  • CURRENT – the main branch, the core ofdevelopment
  • STABLE – branched from CURRENT,long-term preparations for release engineering
  • release engineering – ALPHA, BETA,release candidates (RC) – branched fromSTABLE

Or in the FAQ of the handbook:
Points 2.3 & 2.4

Regarding your update path:
Make sure to read the changelogs and installation instructions for 14.0-RELEASE (as you should always for new releases...); there were some caveats like e.g. 'freebsd-update' needs to be updated prior to upgrading to 14.X. So you might need to first upgrade to 13.3-RELEASE, because I'm almost certain those fixes haven't been backported to 13.1 which was already long EOLed when 14.0-RELEASE was released.
After that you can go right to 14.1-RELEASE, which was officially released today.


edit:
regarding the meaning of "STABLE": IIRC this only refers to the ABI being stable throughout the major version of that branch. It has nothing to do with "the OS being stable" - STABLE is still a development branch, but less 'bleeding edge' than CURRENT, where also changes to the ABI/API may be introduced that can break the system or might require rebuilding parts of the system.
 
My server with 13.1-RELEASE also has zpool, root is on zfs with zroot mounted on /zroot.
First I will need to upgrade it to 13.2 and then move towards the 14.1 and finally to 14.2, right ? is it straight forward ?
 
First I will need to upgrade it to 13.2 and then move towards the 14.1 and finally to 14.2, right ? is it straight forward ?
yes/no and no.
First I'd go to 13.3-RELEASE; this will ensure you have the patches for freebsd-update in place needed for the changes that came with 14.X. 13.2-RELEASE should also be sufficient, but I'd just go to the latest release of the branch.
Then 14.1-RELEASE - there is no 14.2-RELEASE yet.

And as with every major upgrade: make sure to update your bootloader before you upgrade your root pool!
 
Read carefully:

You're using ZFS on root: I suggest you use BE-s (boot environments) to create fallback points along your upgrade path steps.
DO NOT use zpool-upgrade(8) until you are very very sure you want that; see also: FreeBSD / ZFS Upgrade Best Practice Question. Using zpool-upgrade(8) will almost certainly block the possibility to use BE-s to boot into an old BE where you have a different ZFS version. When you happen to create an unbootable system, you can fallback and boot into a previous BE; when that fallback has been blocked by a zpool-upgrade(8), you're left with an unbootable system with full restore from backup as a way out.
 
❝… Some people run -STABLE in production. Heck, some people run -CURRENT in production. Different risk appetites…❞

… to stable/14 (14.0-RELEASE). …

… the upgrade procedure is the same as for any other major upgrade.

You can't use freebsd-update(8) with STABLE.

1717530663237.png
 
First I will need to upgrade it to 13.2 and then move towards the 14.1 and …

First (not an upgrade):
  1. fetch updates
  2. install updates.
Observe release notes for 13.2, then upgrade to 13.2.

Observe release notes for 13.3, then upgrade to 13.3.

Observe release notes for 14.1, then upgrade to 14.1 – assuming that you want RELEASE (not STABLE).
 
Back
Top