I am using Ubuntu Linux 16.04 LTS on Lionde. How do I upgrade Ubuntu 16.04 to 18.04 LTS using terminal bash shell over ssh based session?
Introduction : Ubuntu recommend upgrading a Server Edition installation by using the do-release-upgrade command. Part of the update-manager-core package, it does not have any graphical dependencies and is installed by default. This page shows how to use the recommended upgrade method for Ubuntu Linux 16.04 LTS.
Steps to upgrade Ubuntu 16.04 to 18.04
To upgrade on a server system:
- Login to Ubuntu box
- Patch current system by running sudo apt update && sudo apt upgrade
- After reboot makes sure either UFW firewall is temporarily disabled or TCP port 1022 is open
- To upgrade Ubuntu 18.04 LTS from 16.04 LTS run sudo do-release-upgrade
- Follow on-screen instructions to upgrade to Ubuntu 18.04
Let us see all commands in details.
How to upgrade from Ubuntu Linux 16.04 to 18.04
Type the apt command or apt-get command to upgrade existing system:
$ sudo apt update
$ sudo apt ugprade
Reboot the Linux box if kernel was updated
$ sudo reboot
If you have a ufw firewall running on ufw, open ssh port 1022 using the following ufw syntax:
$ sudo ufw allow 1022/tcp comment 'Temp open port ssh tcp port 1022 for upgrade'
How to upgrade to Ubuntu 18.04 LTS using do-release-upgrade
Upgrade the operating system to the latest release from the command-line by typing the following command:
$ sudo do-release-upgrade
Now follow on-screen instructions. During upgrade procedure, you may be promoted to replace existing grub or ssh config file. Make sure you choose to keep existing version to avoid problems:
After some time you will see “System upgrade is complete” message. Press y to restart your system to load updates kernel and operating system for your cloud server:
Login using the ssh command:
$ ssh [email protected]
Verify Ubuntu Linux kernel version with uname:
$ uname -r
Make sure all needed ports are open and running with the ss command or netstat command:
$ sudo ss -tulpn
$ sudo netstat -tulpn
Use grep command/egrep command or tail command/cat command to verify log files for errors:
$ tail -f /path/to/log/files
$ egrep -i 'err|cri' /var/log/nginx/error.log
Remove tcp port 1022 added Ubuntu VM via ufw
Run following ufw command:
$ sudo ufw delete allow 1022/tcp
And there you have it Ubuntu Linux 16.04 LTS upgraded to Ubuntu 18.04 Linux LTS running on cloud server. See this page for more info.