There is no supported upgrade path from Ubuntu Cosmic to the new Focal release. I had an old server running Cosmic (that I picked 18.10 over 18.04 must surely been an mistake). So let's upgrade Ubuntu to Focal the old school Debian way!
Beware that this can potentially be a dangerous upgrade as it is not supported.
I had issues with SELinux refusing access to
systemctl for root, but you can
read below how to fix it.
If you're feeling adventurous and comfortable with fixing any issue that could arise, go ahead!
As root, replace all the occurrences of
The easiest way would be with
sed -i 's/cosmic/focal/g' /etc/apt/sources.list sed -i 's/cosmic/focal/g' /etc/apt/sources.list.d/*.list
Tip: Double check that everything looks correct in these files.
Before upgrading, update all the
apt package sources:
Now, time for the scary part! Upgrade the system with:
apt -y dist-upgrade
During this upgrade, due to an update of SystemD, SELinux complains with something along the line of:
Failed to execute operation: Access denied
When services are restarted.
This may sound crazy, but the easiest way is to send a
TERM signal to PID 1
(SystemD's “system manager”, or commonly known as
init), which will tell the
process to reexecute itself:
kill -TERM 1
This is almost the same as running:
But SELinux didn't allow me to run that.
Tada! You should now have an upgraded system, you can verify it with:
Which should output:
Distributor ID: Ubuntu Description: Ubuntu 20.04 LTS Release: 20.04 Codename: focal
Woho! Long term support!
PS: You have to reboot to use the latest kernel.