The Debian team has announced the latest version Debian 9.0 “Stretch” will be released on June 17th, 2017. This release has code name “Strech“. Debian 9 is full of new features and upgrades than the previous release.
In this tutorial, I will help you to Upgrade Debian 9 Stretch from Debian 8 Jessie with simple steps. In this tutorial, all commands are running with the root account. So you must have root user privilege or sudo privileges to complete this. The Desktop users can upgrade it immediately and use the new features, But the users with Debian servers can wait for their production upgrades. First, they should try this on their development environment and then upgrade on production, if everything goes fine.
1. Backup Your Data
The first and very important step is to backup your data. So we strongly recommend you to backup any data which is important for you in existing system. For example, Your Mariadb will be upgraded to version 10.1 and you can’t revert it back. So make sure backup your data to a remote location and after that proceed for upgrade. You may need to backup followings:
- Application codebases
- Databases
- Configuration files (eg: DNS, Apache, MySQL, PHP, Postgres etc)
- Emails and email accounts.
- User accounts details.
2. Upgrade All Packages of Debian 8
Before upgrading to Debian 9, first update all packages of current installed Debian system using the following command.
root@debian:~:# apt update && apt upgrade
3. Update sources.list Repository File
Now edit Debian apt configuration file /etc/apt/sources.list and replace all “
root@debian:~:# cp /etc/apt/sources.list /etc/apt/sources.list.origroot@debian:~:# sed -i 's/jessie/stretch/g' /etc/apt/sources.list
The /etc/apt/sources.list file will look like below.
deb http://mirrors.digitalocean.com/debian stretch main deb-src http://mirrors.digitalocean.com/debian stretch main deb http://security.debian.org/ stretch/updates main deb-src http://security.debian.org/ stretch/updates main # stretch-updates, previously known as 'volatile' deb http://mirrors.digitalocean.com/debian stretch-updates main deb-src http://mirrors.digitalocean.com/debian stretch-updates main
4. Update all Packages Again
After replacing all references in the Apt configuration file, Update all the packages on your system again. After that proceed to upgrade distribution.
root@debian:~:# apt update && apt upgrade
5. Upgrade Debian 9 (Stretch)
Finally, upgrade Debian 8 distribution to Debian 9 Stretch using the following command. This command will take some time to complete.
root@debian:~:# apt dist-upgrade
6. Verify Upgrade
At this point your system will have upgraded successfully to Debian 8. Lets reboot the instance first and check the version of upgraded system.
root@debian:~:# reboot
After rebooting system, Login to serer Verify current version of Debian.
root@debian:~:# lsb_release -a Distributor ID: Debian Description: Debian GNU/Linux 9.0 (stretch) Release: 9.0 Codename: stretch
Congratulation’s, You have successfully upgraded to Debian 9 “Stretch”. Have fun!
4 Comments
Hello,
After rebooting
I tried Login with the same passphrase used before the update.
Unfortunately I couldn’t because of ‘Permission denied (publickey)’
What is the reason of this denied permission?
Is there a plan B to login to the server
thank you
thanks.
take care that with this mysql will be auto upgraded to maria db
Hello;
Will this upgrade the database server and everything else? like a fresh install of debian 9?
Unfortunately, this process doesn’t seem to work on my Digital Ocean droplet. When I reboot after upgrading, the boot is delayed five or six minutes, with complaints on the screen about cloud init. I understand that cloud init is required in order for Digital Ocean’s snapshotting to work. I restored my snapshot that I took before upgrading, and tried the process again, same result.
It appears to me that the only safe way of upgrading to Stretch on Digital Ocean is to create a new droplet and migrate your data over.