# Should I upgrade?



## JazzSinatra (Apr 8, 2017)

This might be stupid and noob question, but I'm wondering that should I upgrade my FreeBSD from version 10.3 to version 11? Why I am wondering this:


My system works well now.
I have some software installed directly from source, because no package or port where avaible.
How painless upgrading would be? Is it always recommend to upgrade and update your FreeBSD?


----------



## Phishfry (Apr 8, 2017)

I would say updating is painless as long as you follow the instructions onscreen carefully.

If you have custom software without a port then that might be a problem.

`freebsd-update` actually is ran several times for a major version upgrade. First time run it updates kernel then requires reboot and then re-run `freebsd-update` for stage2 which is update userland. At the end of this 2nd stage the instructions onscreen tell you to rebuild all ports or packages. This part is easy to miss and is very important. Many system libraries in userland need updating and if you miss this step you will have major issues. The instructions onscreen tell you to run `freebsd-update` a third time after rebuilding ports or your packages. This will clean out the old libraries that were updated. Make sure you have updated your ports or packages first. I would also reinstall your custom software package after rebuilding ports or packages.

I think with the patches being evenly applied to both 10.3 and 11 there is not many reasons to update unless there is a new feature you need.


----------



## forquare (Apr 8, 2017)

I would upgrade, small steps are always best. If you wait until 10.3 is unsupported you could find yourself with more of a headache. 

The software you previously compiled _may_ need to be recompiled I guess. 

If you have installed FreeBSD on ZFS, you might like to look at this guide on using boot environments while upgrading to give you a path to return to 10.3 should things go wrong.


----------



## ralphbsz (Apr 8, 2017)

There are two extreme models of administering a system:

Model 1: Install something that works, configure it to your liking, and then leave it alone.  Motto: "Never mess with a running system".  Or: "The correct way to manage a computer is to hire a man and a dog; the man to feed the dog, and the dog to bite the man if the tries to touch the computer".  Apply only security patches, and those also only if absolutely necessary.  This model works really well for a few years, because the system is very stable, requires very little maintenance work, and the absence of maintenance work also means less chance for screwing it up.  Where this runs into its limitations: At some point it stops working.  For example, you can't download packages for it any longer.  Or you need a feature that isn't there.  When this model stops working, it is an enormous amount of work to do the next upgrade; since it requires jumping many versions, and much software will break, you are often better off getting a new system (at least new system disk, sometimes a new computer) and installing/configuring a successor system from scratch.

Model 2: Update all the time.  I run `freebsd-update` and `pkg upgrade` roughly twice a week, and it is very little hassle (usually takes a minute or two), and very rarely does something require manual intervention. But the total amount of work adds up, and there is always risk that a minor breakage occurs.  And that risk and fear is psychologically worse than the work.  I live in constant panic that my wife gives me "the hairy eyeball look" and says "my VPN to work stopped working right after you messed with the server yesterday, so I'm driving to my office on the weekend".  Or that my son can't print his math homework because a new version of `lpd` came in last night and wiped out my hardware-specific patch, and I'll be at fault that the B he gets in calculus will ruin his chance to ever become a great scientist.

In the end, it is a risk/reward/effort tradeoff.  There isn't a right answer for everyone, since the answer depends on the weights/costs you put on these factors.  Personally, I think in the long run model 2 is better.  It does require being well-organized; for example one has to have a complete list of all ports that need to be rebuilt from scratch, all local patches, one can't lose the source code to local utilities, one has to have Makefiles ready to go, and so on.  YMMV.


----------



## SirDice (Apr 10, 2017)

JazzSinatra said:


> Is it always recommend to upgrade and update your FreeBSD?


Update, yes, always keep your system up to date. Upgrades however, only when it's End-of-Life. I'd stick to 10.3 for now. It'll be supported until April 2018. I do recommend setting up a test system with 11.0 and try your software there. You have about a year to iron out any issues.


----------



## JazzSinatra (May 5, 2017)

Thank you for everyone. Especially Phishfry and ralphbsz for their long answers.


----------



## Oko (May 5, 2017)

SirDice said:


> Update, yes, always keep your system up to date. Upgrades however, only when it's End-of-Life. I'd stick to 10.3 for now. It'll be supported until April 2018. I do recommend setting up a test system with 11.0 and try your software there. You have about a year to iron out any issues.


+1


----------

