How To Upgrade Ubuntu With A Single Command

Upgrade Ubuntu With A Single Command

Upgrading Ubuntu is very easy! Even a novice user can easily upgrade Ubuntu from one version to another in the first attempt. That’s why I always recommended Ubuntu for newbies who wants to try Linux for the first time. However, a fellow developer has made the upgrade process a lot easier than ever. Meet zzupdate, a simple command line utility to fully update an Ubuntu PC/server via apt, mostly hands-off and unattended. Believe me or not, You can now upgrade your Ubuntu, either Desktop or Server edition, with a single command.

I tested it in Ubuntu 16.04 LTS, and it worked fine. As you already know, Ubuntu only supports upgrading from one version to the next version, or from one LTS version to the next LTS version. To my surprise, zzupdate utility upgraded my Ubuntu 16.04 LTS to Ubuntu 17.04 (which I never expected). I guess it is because Ubuntu 16.10 is already reached end of life. So, I don’t think It skips over releases and will directly upgrade any Ubuntu version to the most recent available stable version. However, I will have to test it on other older versions to confirm if it really works that way.

Features

  • Automatic unattended upgrade.
  • User intervention or any coding knowledge is not required.
  • Easy to install and use. Just download and start using it in no time.
  • Free and open source. The source code is freely available in GitHub.

zzupdate – Upgrade Ubuntu With A Single Command

The official and recommended way to upgrade any Ubuntu version to the next available version is to run the following commands one by one and follow the onscreen instructions.

For Ubuntu Desktop:

sudo apt-get update
sudo apt-get dist-upgrade
sudo reboot
sudo update-manager -d

For Ubuntu Server:

sudo apt-get update
sudo apt-get upgrade
sudo apt-get dist-upgrade
sudo reboot
sudo do-release-upgrade -d

However, you don’t need to run all those commands to upgrade Ubuntu. The zzupdate upgrades any Ubuntu version in a single command.

First, download “zzupdate” utility using command:

curl -s https://raw.githubusercontent.com/TurboLabIt/zzupdate/master/setup.sh | sudo sh

Sample output would be:

[...]
Installing...
-------------
Cloning into 'zzupdate'...
remote: Counting objects: 57, done.
remote: Total 57 (delta 0), reused 0 (delta 0), pack-reused 57
Unpacking objects: 100% (57/57), done.
Checking connectivity... done.
Already up-to-date.

Setup completed!
----------------
See https://github.com/TurboLabIt/zzupdate for the quickstart guide.

Then, run the following command to upgrade Ubuntu:

sudo zzupdate

It’s that simple. You don’t need to do anything. zzupdate will take care of everything and upgrade your current Ubuntu version to next available version.

Here is the my Ubuntu system details after upgrading:

$ cat /etc/*-release
DISTRIB_ID=Ubuntu
DISTRIB_RELEASE=17.04
DISTRIB_CODENAME=zesty
DISTRIB_DESCRIPTION="Ubuntu 17.04"
NAME="Ubuntu"
VERSION="17.04 (Zesty Zapus)"
ID=ubuntu
ID_LIKE=debian
PRETTY_NAME="Ubuntu 17.04"
VERSION_ID="17.04"
HOME_URL="https://www.ubuntu.com/"
SUPPORT_URL="https://help.ubuntu.com/"
BUG_REPORT_URL="https://bugs.launchpad.net/ubuntu/"
PRIVACY_POLICY_URL="https://www.ubuntu.com/legal/terms-and-policies/privacy-policy"
VERSION_CODENAME=zesty
UBUNTU_CODENAME=zesty

Note for those updating their ubuntu via SSH session:

In case you’re upgrading via SSH, it is recommended to start the upgrade process within screen session. Because in case of any SSH connectivity failure during upgrade process, you can easily reconnect with the upgrade session.

To install the screen tool, run:

sudo apt-get install screen

Then start the screen session using command:

screen

In case of any connectivity failure, you can re-attach to the upgrade session with command:

screen -Dr

Note for those upgrading Ubuntu Desktop 16.04 LTS version:

Ubuntu 16.04 LTS is the long term support release. So it will only search for the next available LTS version, which is Ubuntu 18.04 LTS. 18.04 LTS is not released yet, so zzupdate won’t update your system. If you want to upgrade Ubuntu 16.04 LTS to any next available version (LTS or normal), open Software & Updates.

Then click the drop down box that says Notify me of a new Ubuntu version under the Updates tab and select “For any new version”. Then, Click Close.

Ubuntu 16.10 LTS 1

And then, run the “sudo zzupdate” command to start upgrade process.

Note for those who are upgrading Ubuntu 16.04 LTS server editions:

Edit the file /etc/update-manager/release-upgrades,

sudo nano /etc/update-manager/release-upgrades

and Change Prompt=lts to Prompt=normal.

Finally, run “sudo zzupdate” to start the upgrade process. Now, Ubuntu 16.04 LTS is upgrade to the next available new version.

Configure zzupdate

zzupdate just works fine as it is. However, if you want to change some parameters (such as, to exclude reboot, version aggression), you’re free to do that by modifying the config file.

Copy the default config file:

sudo cp /usr/local/turbolab.it/zzupdate/zzupdate.default.conf /etc/turbolab.it/zzupdate.conf

Edit the configuration file:

sudo vi /etc/turbolab.it/zzupdate.conf

Then, modify the parameters as per your requirement.

Here is the list of available parameters.

  • REBOOT – If the value is 1, the system will be restarted at end of the upgrade process. Default is 1.
  • REBOOT_TIMEOUT – Reboot default time out value. Default value is 15.
  • VERSION_UPGRADE – If the value is 1, it executes version progression if a new version of Ubuntu is available.
  • VERSION_UPGRADE_SILENT – If the value is 1, version progression occurs automatically, without asking the user anything. Default value is 0.
  • COMPOSER_UPGRADE – If the value is 1, it automatically upgrades composer.

By default, we run “zzupdate” to upgrade Ubuntu with default parameters. We can also create different profiles with specific parameter(s).

To do so, create a specific profile by copying from the default config file:

sudo cp /usr/local/turbolab.it/zzupdate/zzupdate.default.conf /etc/turbolab.it/zzupdate.profile.ostechnix.conf

Please note that, I have used “ostechnix” in the profile name.

Then, modify the default available parameters as per your requirement.

sudo vi /etc/turbolab.it/zzupdate.profile.ostechnix.conf
REBOOT=0
REBOOT_TIMEOUT=10
VERSION_UPGRADE=1

Save and close the file. Now, you can start the upgrade process using the specified profile name as shown below.

sudo zzupdate ostechnix

Similarly, you can create as many as profiles with different parameters.

And, that’s all for now. Hope this helps. Have you tried this utility already? Share your thoughts about this utility in the comment section below. If you find this guide useful, please share it on your social, professional networks and support OSTechNix!

Cheers!

Resource:

Thanks for stopping by!

Help us to help you:

Have a Good day!!

You may also like...

  • Ganesh Patibandla

    is this command only for 17.04? or any futuristics LTS?

    • SK

      It is for all Ubuntu versions.

      • Ganesh Patibandla

        Thx for reply. The name of command is zzcommand (zz–>zesty zapus), so I understood this cmd is upgrading from any version (15.10 or 14.04 ) to zesty (source –> many, but destination –> one and only one zesty)

  • Thanks for your review!

    (I’m the author of zzupdate 🙂 )