Applicable to:
- Plesk Obsidian for Linux
- Plesk for Linux
How to perform a dist-upgrade?
Warning: The dist-upgrade procedure is complex, hence you may want to consider migration instead as can be seen here: Plesk Migration and Transfer Guide
Warning: The dist-upgrade procedure can not be performed in a containerized environment. If this is not known, contact the server provider in order to know if the server or the environment is a container
Warning: For servers running Plesk versions below 18.0.35, always use Plesk-Archive repository in sources.list file by replacing "autoinstall.plesk.com" with "autoinstall-archives.plesk.com" in the following instructions
The dist-upgrade procedure is supported in Plesk as per the following versions:
Supported for | Plesk version |
---|---|
Ubuntu 20 > Ubuntu 22 | Plesk Obsidian 18.0.44 and above |
Ubuntu 18 > Ubuntu 20 | Plesk Obsidian 18.0.33 and above |
Ubuntu 16 > Ubuntu 18 | Plesk Obsidian 18.0.30 and above |
Debian 10 > Debian 11 | Plesk Obsidian 18.0.42 and above |
Debian 9 > Debian 10 | Plesk Obsidian 18.0.30 and above |
If you have never performed dist-upgrade before, it is recommended to test it first as follows:
-
Install the previous version of OS on a test server or inside a virtual machine. Upgrade it using instructions provided in the documentation by the OS vendor:
-
Solve all potential problems and make sure that Plesk is working after the upgrade. Only after that run the upgrade on the production server.
If you want or need Plesk to assist on this task or to do it on your behalf, it can be requested to Plesk Professional Services team here: Plesk Professional Services: Administrative Services
Ubuntu distributions
Warning: The dist-upgrade
process from Ubuntu 20.04 to Ubuntu 22.04 is supported by Plesk Obsidian 18.0.44 version.
Preparing server for upgrade
-
Create a full server backup. Before the upgrade, make a full server backup (which includes a full backup of all the databases). Also, notify the customers about upcoming downtime of one to three hours
-
Connect to the server via SSH
-
Change to root user by using the following command:
# sudo su -
-
Enable enhanced security mode:
# plesk bin passwords --encrypt
-
Uninstall the unsupported components mailman, ruby and PHP handlers below version 7.3:
# plesk installer remove --components php7.1 php7.2 php7.3 mailman gems-pre ruby
# apt-get purge $(dpkg -l | egrep "(plesk-ruby2|plesk-rbenv)" | awk '{print $2}')
-
Remove packages which were installed by dependencies but aren't required:
# apt-get autoremove
-
Execute the command below to be sure that system is up-to-date:
# plesk sbin pum --update
-
Run the command to make Plesk up-to-date:
# plesk installer update
-
Install aptitude:
# apt-get install aptitude
-
Remove repository lists that are related to Plesk:
# rm -f /etc/apt/sources.list.d/plesk*.list
Performing the dist-upgrade
-
Replace focal sources lists with jammy sources lists in
/etc/apt/sources.list
and/etc/apt/sources.list.d/*.list
:Note: below is the example for
/etc/apt/sources.list
file:# sed -i "s/focal/jammy/g" /etc/apt/sources.list
deb http://archive.ubuntu.com/ubuntu jammy main restricted universe
deb http://archive.ubuntu.com/ubuntu jammy-updates main restricted universe
deb http://security.ubuntu.com/ubuntu jammy-security main restricted universe multiverse -
Make installer to create Plesk sources list for Ubuntu 22.04:
# plesk installer --override-os-version 22.04 --check-updates --skip-cleanup
-
Change bind-address in the
/etc/mysql/my.cnf
to accept IPv4 connections (From 10.6.0::
refers to IPv6 stictly):bind-address = ::ffff:127.0.0.1
to
bind-address = 127.0.0.1
-
Add string below into the
/etc/mysql/my.cnf
file under [mysqld] section:innodb_fast_shutdown=0
-
Restart MariaDB service to apply the changes:
# systemctl restart mariadb || systemctl restart mysql
-
Install modern kernel, libc6, python3, mariadb packages with the command:
Note: mysql-community-server has not been published for Ubuntu 22.04 Jammy yet.
-
For MariaDB:
# aptitude install base-files linux-generic libc6 python3 mariadb-server-10.6
-
For MySQL:
# aptitude install base-files linux-generic libc6 python3 mysql-server-8.0
Note: Make sure that after execution of the command above, Plesk-related packages are not marked, for removal, normally if mariadb server is installed list should be as below:
Remove the following packages:
1) galera-3 [25.3.29-1 (now)]
2) mariadb-client-10.3 [1:10.3.34-0ubuntu0.20.04.1 (now)]
3) mariadb-client-core-10.3 [1:10.3.34-0ubuntu0.20.04.1 (now)]
4) mariadb-server-10.3 [1:10.3.34-0ubuntu0.20.04.1 (now)]
5) mariadb-server-core-10.3 [1:10.3.34-0ubuntu0.20.04.1 (now)]
6) python3-systemd [234-3build2 (now)]
7) python3-twisted-bin [18.9.0-11ubuntu0.20.04.2 (now)]Note: When a request to overwrite SSHd configuration appears, leave the configuration as it is.
Note: Select to allow automatic restart for services
-
-
Remove line below from the
/etc/mysql/my.cnf
file:innodb_fast_shutdown=0
-
Reboot the server:
# reboot
-
Wait some time for the server to reboot, then connect to the server via SSH
-
Switch to root user:
# sudo su -
-
Execute the command below to get Plesk build for Ubuntu 22.04:
# plesk installer update --skip-cleanup
-
Update the Plesk extensions:
# plesk bin extension -l | egrep '(panel-migrator|site-import)' | awk {'print $1'} | xargs -i plesk bin extension -i {}
-
Complete distupgrade process:
# apt-get dist-upgrade
Note: leave configuration for Postfix, PAM, rsyslog, SpamAssassin, cloud-init and other services as is.
-
Optional step: Remove unused packages:
# apt-get autoremove
-
Optional step: Purge the configuration files of the removed packages:
# apt-get purge `dpkg -l | grep "^rc" | awk '{print $2}'`
-
Restore the Plesk packages configuration:
# plesk installer update
-
Reboot the server
-
Check that Plesk and all its services are working
Warning: The dist-upgrade
process from Ubuntu 18.04 to Ubuntu 20.04 is supported by Plesk Obsidian 18.0.33 version.
Warning: The dist-upgrade
process from Ubuntu 18.04 to Ubuntu 20.04 is supported with MariaDB scenario only.
Preparing server for upgrade
-
Create a full server backup. Before the upgrade, make a full server backup (which includes a full backup of all the databases). Also, notify the customers about upcoming downtime of one to three hours.
-
Remote management module must be installed on the server (This is because, in some tests, sshd service could not be started during the process)
-
Connect and perform the process connected as root or by using the
# su -
or# sudo su -
command. -
Uninstall unsupported components like PHP below 7.0, Watchdog (Ubuntu users only)... It can be done through Plesk installer.
Note: More information can be found here: Software Requirements for Plesk Obsidian
-
Temporary install msmtp component instead of Postfix. It can be done through Plesk installer or by using the command:
# plesk installer add --components msmtp
-
Add to the mariadb config file
/etc/mysql/mariadb.conf.d/50-server.cnf
the stringinnodb_fast_shutdown=0
in the [mysqld] section. In case MySQL is installed, add the string into/etc/mysql/my.cnf
in the [mysqld] section. -
Restart the DB server to apply changes:
# systemctl restart mariadb || systemctl restart mysql || systemctl restart mysqld
-
Make sure that
update-manager-core
package is installed:# apt-get install update-manager-core
-
Update the current system to the latest available versions:
# apt-get update && apt-get upgrade
- Remove all plesk-related repos from /etc/apt/sources.list.d/. For example, you can archive them by removing originals using the next command:
# tar -cvf ~apt-sources.tar /etc/apt/sources.list.d/plesk* --remove-files
-
Stop grafana service:
# systemctl stop grafana-server.service
Performing the dist-upgrade
-
Update source.list file and configure the repository for the OS release that is going to upgrade to :
# cat /etc/apt/sources.list
deb http://archive.ubuntu.com/ubuntu/ focal main restricted universe
deb http://archive.ubuntu.com/ubuntu/ focal-updates main restricted universe
deb http://archive.ubuntu.com/ubuntu/ focal-security main restricted universe
deb http://autoinstall.plesk.com/PSA_18.0.37/ focal all
deb http://autoinstall.plesk.com/pool/PHP_7.1.33_96 focal all
deb http://autoinstall.plesk.com/pool/PHP_7.2.34_150 focal all
deb http://autoinstall.plesk.com/PHP73_17/ focal all
deb http://autoinstall.plesk.com/PHP74_17/ focal all
deb http://autoinstall.plesk.com/PHP80_17/ focal all
deb https://packages.grafana.com/oss/deb stable main
deb [arch=amd64] http://autoinstall.plesk.com/PMM_0.1.11 focal all
deb [arch=amd64] http://autoinstall.plesk.com/NODE_0.0.2 all all
deb [arch=amd64] http://autoinstall.plesk.com/RUBY_0.0.2 focal allNote: The example above is for an installed version of Plesk Obsidian 18.0.37. The correct link for each installed version must be modified accordingly. "
sources.list
" should be replaced with the contents presented above in the article. Only the highlighted line is to be updated/edited.
For example:http://autoinstall.plesk.com/PSA_x.y.z/
Whereas the versionx.y.z
is the current Plesk installed version, which can be found in the output of the command:# plesk -v
-
Update the repositories:
# apt-get update
-
Upgrade the kernel:
# apt-get install linux-generic
-
Update MariaDB to the next major version provided by the vendor:
# apt-get install mariadb-server-10.3
In case MySQL installed, update it to the next major version provided by the vendor
# apt-get install mysql-server-5.7
-
Remove from the mariadb config file
/etc/mysql/mariadb.conf.d/50-server.cnf
the stringinnodb_fast_shutdown=0
in the [mysqld] section, added at the beginning of this process. In case MySQL is installed, remove the string from/etc/mysql/my.cnf
in the [mysqld] section. -
Install udev package:
# apt-get install udev
Warning: The udev package installation may fail on Ubuntu systems which may be needed to be solved manually. If that is the case, the following should be checked and applied:
-
At line 26 in the
/lib/systemd/system/systemd-udevd.service
file, the following string should be changed: -
From:
CONFIG_TEXT: ExecReload=udevadm control --reload --timeout 0
-
To:
CONFIG_TEXT: ExecReload=/bin/udevadm control --reload --timeout 0
-
And execute the following command:
# apt-get -f install
-
-
Install Systemd package:
# apt-get install systemd
-
Reboot the server to the new kernel:
# shutdown -r now
Note: This will help to avoid problems with services that already loaded old libc6/libstdc libraries
Warning: MariaDB/MySQL won't start till the reboot is performed.
-
Remove packages that were installed by dependencies and not needed anymore:
# apt-get autoremove
-
Upgrade packages:
# apt-get upgrade
Note: If prompted, choose "latest" for LXD if this is unknown.
Note: When prompted, you should keep the previous version of
Spamassassin
configuration file. -
Remove packages that were installed by dependencies and not needed anymore:
# apt-get autoremove
-
Execute the dist-upgrade command:
# apt-get dist-upgrade
Note: At this point, plesk-mail-pc-driver, postfix, drweb, kav packages will be removed because there is already a vendor's Postfix that will be used in Ubuntu 20 (which version is lower that the psa-postfix installed in Ubuntu 18)
-
Remove packages that were installed by dependencies and not needed anymore:
# apt-get autoremove
-
Update Plesk to the next available version finishing the dist-upgrade process:
# plesk installer update
-
Fix the Bind DNS server defaults file:
# cp /etc/default/bind9 /etc/default/named
-
Check that all the Plesk components are installed and if not (Like for example in case there were components uninstalled like the ones in the dist upgrade step), select and re-install them again through the plesk installer along with Postfix which was replaced by msmtp at the beginning:
# plesk installer
-
Reboot the server:
# shutdown -r now
-
Check that Plesk and all its services are working.
Note: Ubuntu 16 by default has MySQL 5.7 installed, as a result of dist-upgrade it will remain intact and won't be replaced with MariaDB.
Preparing server for upgrade
-
Create a full server backup. Before the upgrade, make a full server backup (which includes a full backup of all the databases). Also, notify the customers about upcoming downtime of one to three hours.
-
Remote management module must be installed on the server so that it can still be managed if sshd service cannot be started. Like KVM over IP or IPMI. (This is because, in some tests, sshd service could not be started during the process)
-
Update the current system to the latest available versions:
# apt-get update && apt-get upgrade
-
Add to the mariadb config file
/etc/mysql/mariadb.conf.d/50-server.cnf
the stringinnodb_fast_shutdown=0
in the [mysqld] section. In case MySQL is installed, add the string into/etc/mysql/my.cnf
in the [mysqld] section. -
Restart the DB server to apply changes:
# systemctl restart mariadb || systemctl restart mysql || systemctl restart mysqld
-
Remove packages that are no longer supported:
# apt-get remove samba-common samba-libs samba-vfs-modules
-
Remove Plesk components that are no longer supported or can break the upgrade:
Note: Only the bold marked components and packages may be installed back later on this guide
# apt-get remove psa-watchdog plesk-php52* plesk-php53* plesk-php54* plesk-php55* plesk-php56* plesk-php70* psa-spamassassin docker*
Performing the dist-upgrade
-
Update source.list file and configure the repository for the OS release that is going to upgrade to, in this case to bionic
# cat /etc/apt/sources.list
deb http://archive.ubuntu.com/ubuntu bionic main restricted universe
deb http://archive.ubuntu.com/ubuntu bionic-updates main restricted universe
deb http://security.ubuntu.com/ubuntu bionic-security main restricted universe multiverse
deb http://autoinstall.plesk.com/PSA_18.0.37/ bionic all
deb http://autoinstall.plesk.com/ubuntu/PHP70_17 bionic all
deb http://autoinstall.plesk.com/PHP71_17/ bionic all
deb http://autoinstall.plesk.com/PHP72_17/ bionic all
deb http://autoinstall.plesk.com/PHP73_17/ bionic all
deb http://autoinstall.plesk.com/PHP74_17/ bionic all
deb http://autoinstall.plesk.com/debian/SITEBUILDER_17.8.12 all all
deb [arch=amd64] http://autoinstall.plesk.com/PMM_0.1.11 bionic all
deb [arch=amd64] http://autoinstall.plesk.com/NODE_0.0.2 all all
deb https://packages.grafana.com/oss/deb stable main
deb [arch=amd64] https://download.docker.com/linux/ubuntu bionic stableNote: The example above is for an installed version of Plesk Obsidian 18.0.37. The correct link for each installed version must be modified accordingly. "
sources.list
" should be replaced with the contents presented above in the article. Only the highlighted line is to be updated/edited.
For example:http://autoinstall.plesk.com/PSA_x.y.z/
Whereas the versionx.y.z
is the current Plesk installed version, which can be found in the output of the command:# plesk -v
-
Update the repositories:
# apt-get update
-
Upgrade the kernel:
# apt-get install linux-generic
- Remove from the mariadb config file
/etc/mysql/mariadb.conf.d/50-server.cnf
the stringinnodb_fast_shutdown=0
in the [mysqld] section, added at the beginning of this process. -
Reboot the server
# reboot
-
Update dpkg package:
# apt-get install dpkg
-
Update apt package:
# apt-get install apt
-
Upgrade all possible packages:
# apt-get upgrade
-
When prompted, choose to keep local version config installed for:
-
/opt/psa/etc/apparmor.d/usr.lib.dovecot.dovecot-lda
-
/etc/awstats/awstats.conf
-
-
Execute the dist-upgrade process:
# apt-get dist-upgrade
-
When prompted, keep the previous version of
/etc/apache2/apache2.conf
Warning: after this operation, apache2 may not start due to problems with http_proxy module.
-
Disable it by removing file
/etc/apache2/mods-enabled/proxy_http.load
# rm /etc/apache2/mods-enabled/proxy_http.load
-
Start apache:
# systemctl start apache2.service
-
-
When prompted, keep the local version currently installed for the config files below:
-
/usr/share/rsyslog/50-default.conf
-
/etc/cron.daily/spamassassin
-
/etc/apache2/apache2.conf
-
/etc/pam.d/common-*
-
/etc/rsyslog.d/50-default.conf
-
/usr/share/psa-roundcube/config/config.inc.php
/etc/pam.d/common-*
-
-
It is safe to install the maintainer's version for the configuration files below when prompted:
-
/etc/apparmor.d/*
-
/etc/ssh/sshd_config
-
-
Reboot the server.
# reboot
-
Check that Plesk and all its services are working.
Debian distributions
Warning: dist-upgrade
from Debian 9 to Debian 10 is supported by Plesk Obsidian 18.0.30 version.
Warning: The dist-upgrade
process from Debian 9 to Debian 10 is supported with MariaDB scenario only.
Warning: Due to mail server being temporarily uninstalled for the time of upgrade, some settings, i.e. maximum message size, can be reset.
Preparing server for upgrade
-
Create a full server backup. Before the upgrade, make a full server backup. Also, notify the customers about upcoming downtime of one to three hours.
- Connect and perform the process connected as root or by using the
# su -
or# sudo su -
command. -
Uninstall unsupported components like docker, PHP below 7.0... (It can be done through Plesk installer).
Note: More information can be found here: Software Requirements for Plesk Obsidian
-
Temporary install msmtp component instead of Postfix. It can be done through Plesk installer or by using the command:
# plesk installer add --components msmtp
-
Add to the mariadb/mysql config file (Usually /etc/mysql/my.cnf) the string
innodb_fast_shutdown=0
in the [mysqld] section. -
Restart the DB server to apply changes:
# systemctl stop mariadb.service ; systemctl start mariadb.service
-
Update the current system to the latest available versions:
# apt-get update && apt-get upgrade
- Remove all plesk-related repos from /etc/apt/sources.list.d/. For example, you can archive them by removing originals using the next command:
# tar -cvf ~apt-sources.tar /etc/apt/sources.list.d/plesk* --remove-files
-
Stop grafana service:
# systemctl stop grafana-server.service
Performing the dist-upgrade
-
Update source.list file and configure the repository for the OS release that is going to upgrade to:
# cat /etc/apt/sources.list
deb http://security.debian.org/debian-security buster/updates main contrib non-free
deb http://deb.debian.org/debian/ buster-updates main contrib non-free
deb http://deb.debian.org/debian/ buster main contrib non-free
deb http://autoinstall.plesk.com/PSA_18.0.37/ buster all
deb http://autoinstall.plesk.com/debian/SITEBUILDER_17.8.12 all all
deb http://autoinstall.plesk.com/PHP71_17/ buster all
deb http://autoinstall.plesk.com/PHP72_17/ buster all
deb http://autoinstall.plesk.com/PHP73_17/ buster all
deb http://autoinstall.plesk.com/PHP74_17/ buster all
deb https://packages.grafana.com/oss/deb stable main
deb [arch=amd64] http://autoinstall.plesk.com/PMM_0.1.11 buster all
deb [arch=amd64] http://autoinstall.plesk.com/NODE_0.0.2 all all
deb [arch=amd64] http://autoinstall.plesk.com/RUBY_0.0.2 buster allNote: The example above is for an installed version of Plesk Obsidian 18.0.37. The correct link for each installed version must be modified accordingly.
"sources.list
" should be replaced with the contents presented above in the article. Only the highlighted line is to be updated/edited
For example:http://autoinstall.plesk.com/PSA_x.y.z/
Whereas the versionx.y.z
is the current Plesk installed version, which can be found in the output of the command:# plesk -v
-
Update the repositories:
# apt-get update
-
Upgrade the kernel:
# apt-get install linux-image-amd64
-
Update MariaDB to the next major version provided by the vendor:
# apt-get install mariadb-server-10.3
Warning: MariaDB/MySQL won't start till the reboot is performed.
-
Remove from the mariadb/mysql config file (Usually /etc/mysql/my.cnf) the string
innodb_fast_shutdown=0
in the [mysqld] section, added at the beginning of this process. - When AppArmor was installed, bind service fails to start:
# systemctl status bind9
Resolve it by either disabling AppArmor with following commands or reconfigure AppArmor:
* bind9.service - BIND Domain Name Server
Loaded: loaded (/lib/systemd/system/bind9.service; enabled; vendor preset: enabled)
Active: failed (Result: exit-code) since Sun 2022-04-17 13:55:14 EEST; 4s ago
Docs: man:named(8)
Process: 13480 ExecStop=/usr/sbin/rndc stop (code=exited, status=1/FAILURE)
Process: 13474 ExecStart=/usr/sbin/named -f $OPTIONS (code=exited, status=1/FAILURE)
Main PID: 13474 (code=exited, status=1/FAILURE)
CPU: 12ms
Apr 17 13:55:14 example.com named[13474]: loading configuration from '/etc/named.conf'
Apr 17 13:55:14 example.com named[13474]: open: /etc/named.conf: permission denied
Apr 17 13:55:14 example.com named[13474]: loading configuration: permission denied
# systemctl stop apparmor
# systemctl restart bind9 -
Reboot the server to the new kernel:
# shutdown -r now
-
Upgrade packages:
# apt-get upgrade
Note: When prompted, you should keep the previous version of
Rsyslog
configuration file.Note: When prompted, you should keep the previous version of
Spamassassin
configuration file. -
Remove packages that were installed by dependencies and not needed anymore:
# apt-get autoremove
- In case AppApmor is enabled adjust it by following this article to let Bind9 load properly
-
Execute the dist-upgrade command:
# apt-get dist-upgrade
Note: At this point, there is a possibility that components are removed, like for example:
php7.0-curl
plesk-mail-pc-driver
postfix
psa-drweb-configurator
psa-spamassassin
which is because on Debian 10 vendor's postfix is used and its version is lower than postfix shipped by Plesk for Debian 9 -
Update Plesk to next available version finishing the dist-upgrade process:
# plesk installer update
-
Check that all the Plesk components are installed and if not (Like for example in case there were components uninstalled like the ones in the dist upgrade step), select and re-install them again through the plesk installer along with Postfix which was replaced by msmtp at the beginning:
# plesk installer
-
Reboot the server:
# reboot
-
Check that Plesk and all its services are working.
-
Use the following commands to regenerate web server as well as DNS configuration files if needed:
# plesk repair web
# plesk repair dns
Warning: The dist-upgrade
from Debian 10 to Debian 11 is supported by Plesk Obsidian 18.0.42 version.
Warning: The dist-upgrade
process from Debian 10 to Debian 11 is supported with MariaDB scenario only.
-
Create a full server backup. Before the upgrade, make a full server backup. Also, notify the customers about upcoming downtime of one to three hours.
- Connect to the server and perform the process connected as root or by using the
# su -
or# sudo su -
command. -
Uninstall unsupported components like
mailman
,webalizer
,watchdog
and PHP handlers below 7.3 version:Note: before applying the command below, switch the existing websites to PHP version 7.4 or higher.
# plesk installer remove --components php7.1 php7.2 php7.3 mailman webalizer watchdog
- Remove packages which were installed by dependencies but aren't required:
# apt-get autoremove
- Execute the command below to be sure that system is up-to-date:
# plesk sbin pum --update
OR
# apt-get update && apt-get upgrade
- Run the command to make Plesk up-to-date:
# plesk installer update
- Install
aptitude
:
# apt-get install aptitude
- Remove repository lists that are related to Plesk:
# rm -f /etc/apt/sources.list.d/plesk*.list
- Replace
buster
sources lists withbullseye
ones in/etc/apt/sources.list
and/etc/apt/sources.list.d/*.list
:
Note: below is the example for
/etc/apt/sources.list
file:CONFIG_TEXT: deb http://deb.debian.org/debian bullseye main contrib non-free
deb-src http://deb.debian.org/debian bullseye main contrib non-free
deb http://deb.debian.org/debian-security/ bullseye-security main contrib non-free
deb-src http://deb.debian.org/debian-security/ bullseye-security main contrib non-free
deb http://deb.debian.org/debian bullseye-updates main contrib non-free
deb-src http://deb.debian.org/debian bullseye-updates main contrib non-free - Make installer to create Plesk sources list for Debian 11:
# plesk installer --override-os-version 11 --check-updates --skip-cleanup
- Add string below into the
/etc/mysql/my.cnf
file under[mysqld]
section:
CONFIG_TEXT: innodb_fast_shutdown=0
- Restart
MariaDB
service to apply the changes:
# systemctl restart mariadb
- Install modern kernel, libc6, python3, mariadb packages with the command:
# aptitude install base-files linux-image-amd64 libc6 python3 mariadb-server-10.5
Note:Make sure that after execution of the command above, Plesk-related packages are not marked, for removal, normally list should be as below:
CONFIG_TEXT: Remove the following packages:
1) g++-8 [8.3.0-6 (now)]
2) galera-3 [25.3.25-2 (now)]
3) gcc-8 [8.3.0-6 (now)]
4) libgcc-8-dev [8.3.0-6 (now)]
5) libpython-stdlib [2.7.16-1 (now)]
6) libstdc++-8-dev [8.3.0-6 (now)]
7) mariadb-client-10.3 [1:10.3.22-0+deb10u1 (now)]
8) mariadb-client-core-10.3 [1:10.3.22-0+deb10u1 (now)]
9) mariadb-server-10.3 [1:10.3.22-0+deb10u1 (now)]
10) mariadb-server-core-10.3 [1:10.3.22-0+deb10u1 (now)]
11) openssh-sftp-server [1:7.9p1-10+deb10u1 (now)]
12) python [2.7.16-1 (now)]
13) python-minimal [2.7.16-1 (now)]Note: when you will be asking to overwrite sshd configuration, left it as is. Also allow automatic restart for services
- Remove line below from the
/etc/mysql/my.cnf
file:
CONFIG_TEXT: innodb_fast_shutdown=0
- Reboot the server
- Rename configuration from
bind9
tonamed
:
# mv /etc/default/bind9 /etc/default/named
- Execute the command below to get Plesk build for Debian 11 OS:
# plesk installer update --skip-cleanup
- Update the Plesk extensions:
# plesk bin extension -l | egrep '(ruby|panel-migrator|site-import)' | awk {'print $1'} | xargs -i plesk bin extension -i {}
- Complete distupgrade process:
# apt-get dist-upgrade
Note: leave configuration for Postfix, PAM, rsyslog, SpamAssassin, cloud-init and other services as is.
- Optional step: Remove unused packages:
# apt-get autoremove
- Optional step: Purge the configuration files of the removed packages:
# apt-get purge `dpkg -l | grep "^rc" | awk '{print $2}'`
- Restore the Plesk packages configuration:
# plesk installer update
- Reboot the server
Warning: Most APS applications will not work with PHP 7.x
Unsupported EOLed OSes
Note: Plesk Onyx 17.8 is EOLed and no support will be provided if something goes wrong. In case you have EOLed OS/Plesk the best-recommended scenario is migration.
Warning: dist-upgrade
from Ubuntu 14 to Ubuntu 16 and is supported by Plesk Onyx 17.8 version.
Warning: During an upgrade from Ubuntu 14 to Ubuntu 16, system PHP 5.x shipped by OS vendor will be upgraded to PHP 7.x. So to avoid any PHP compatibility issues, before an upgrade, it is highly recommended to switch all sites having PHP handler 5.x by OS vendor to corresponding custom PHP handlers. Please refer to these KB articles for details: How to configure PHP handlers in Plesk for Linux? and How to apply new PHP handler to multiple domains via CLI?
Warning: Also, MySQL server upgrade can fail during the upgrade. The issue and its resolution are described in: Dist-upgrade from Ubuntu 14 to 16 fails: Sub-process /usr/bin/dpkg returned an error code (1).
Warning: if PHP by OS vendor was updated from third-party sources prior to dist-upgrade, it may break webmail functionality.
-
Create a full server backup. Before the upgrade, make a full server backup. Also, notify the customers about upcoming downtime of one to three hours.
-
Run below script and follow the wizard:
# /opt/psa/bin/distupgrade.helper.ubt14-ubt16.x64.sh
The script logs all its actions in
/var/log/plesk/install/plesk-distupgrade.log
. -
During the script execution, you will be asked to reboot the server. Reboot the server.
-
After the server reboot, run the script once again.
Warning: dist-upgrade
from Debian 8 to Debian 9 is supported by Plesk Onyx 17.8 version.
Warning: if PHP by OS vendor was updated from third-party sources prior to dist-upgrade, it may break webmail functionality.
Preparing server for upgrade
-
Create a full server backup. Before the upgrade, make a full server backup. Also notify the customers about upcoming downtime of one to three hours.
-
Consider to remove sources list backup files which might be left from the previous dist-upgrade:
/etc/apt/sources.list.saved_by_plesk_distupgrade
- /etc/apt/sources.list.d/50sw_autoinstaller.list.saved_by_plesk_distupgrade`
-
Run pre-upgrade helper script and prepare Plesk and the system for the upgrade:
# /opt/psa/bin/distupgrade.helper.deb8-deb9_pre.x64.sh
The script logs all its actions in
/var/log/plesk/install/plesk-distupgrade.log
.
Performing the dist-upgrade
-
Update source.list file and configure the repository for the OS release that is going to upgrade to:
# cat /etc/apt/sources.list
deb http://deb.debian.org/debian stretch main contrib non-free
deb http://security.debian.org/debian-security/ stretch/updates main contrib non-free
deb http://deb.debian.org/debian stretch-updates main contrib non-free -
Update information about system packages:
# apt-get update
-
Upgrade the system:
# /opt/psa/bin/distupgrade.helper.deb8-deb9.x64.sh
This command will perform a complete upgrade of the system, install the newest available versions of all packages and resolve all possible dependency changes between packages in different releases.
During the upgrade the system might produce prompts like:
CONFIG_TEXT: Configuration file
/etc/mysql/my.cnf
==> Modified (by you or by a script) since installation.
==> Package distributor has shipped an updated version.
What would you like to do about it ?
Your options are:
Y or I : install the package maintainer's version
N or O : keep your currently-installed version
D : show the differences between the versions
Z : start a shell to examine the situation
The default action is to keep your current version.
*** my.cnf (Y/I/N/O/D/Z) [default=N] ?
Choose to replace configuration files with a new one (answerY
).
Finalizing the upgrade
-
Run post-upgrade helper script:
# /opt/psa/bin/distupgrade.helper.deb8-deb9_post.x64.sh
Note: This script is already called during the execution of
/opt/psa/bin/distupgrade.helper.deb8-deb9.x64.sh
, run it to verify that everything was successfully done. Its actions are logged in/var/log/plesk/install/plesk-distupgrade.log
too. -
Reboot the server.
-
Check that Plesk and all its services are working.
Comments
101 comments
This feature is promised for 22 month and is a long-term feature in Debian based derivates. Making a uservoice out of it is just typical for you useless putin alt-right loving a-holes
Plesk
put a toothpick under your big ducking ugly toes and kick a wall you senseless piece of 💩's...
Hello,
We do plan to publish a guide for Ubuntu dist-upgrade16>18 and 18>20 on Plesk Obsidian 18.0.31 version approximately till end of October.
+1
I am also waiting for this upgrade support!
Buying and setting up a new server is way too much effort.
@Julian: An upgrade path using the plesk migrator is not a real option for us and for many others either.
We have many customers using their own DNS. Coordinating a synchronous switch with them is a huge effort and will result in a lot of trouble. Economically it just doesn't make sense to us. As Plesk customer we expected to get a "smooth" migration path and not a bumpy ride with the Plesk Migrator. And DNS is not the only trouble doing that.
Is there going to be an upgrade path from 16.04 directly to 20.04? So you have basically discontinued support for a server OS upgrade? Is that correct?
@ivan said, that more infos on this topic is expected in Q1 2020 (https://support.plesk.com/hc/en-us/articles/360002913773/comments/360000940499)
@Julian Bonpland Mignaquy
Yes, and this text is more than 1 year old.
Hi Robert Asilbekov,
Eleven things that I think should be rephrased on the Plesk support article regarding UPGRADE from Ubunti 16 to Ubuntu 18, are:
https://support.plesk.com/hc/en-us/articles/213410369-How-to-perform-dist-upgrade-procedure-on-Linux-server-with-Plesk-
1) the issue with the GUI which should be clarified, it's not related to the Plesk Server but to a second machine running on Ubuntu (possibly lots of users do NOT have such second machine)
\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\
"Remote management module must be installed on the server so that it can still be managed if sshd service cannot be started. Like KVM over IP or IPMI. (This is because, in some tests, sshd service could not be started during the process)"
\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\
2) The new need of user's to entirely replace the DEB list, if they have a new list of the Ubuntu 16 which is now different than the one it installed while being supported, including a clear comment about the Plesk version to be set there
\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\
BACKUP
cp /etc/apt/sources.list /etc/apt/sources.list.bak
# cat /etc/apt/sources.list
deb http://archive.ubuntu.com/ubuntu bionic main restricted universe
deb http://archive.ubuntu.com/ubuntu bionic-updates main restricted universe
deb http://security.ubuntu.com/ubuntu bionic-security main restricted universe multiverse
deb http://autoinstall.plesk.com/PSA_18.0.34/ bionic all
deb http://autoinstall.plesk.com/ubuntu/PHP70_17 bionic all
deb http://autoinstall.plesk.com/PHP71_17/ bionic all
deb http://autoinstall.plesk.com/PHP72_17/ bionic all
deb http://autoinstall.plesk.com/PHP73_17/ bionic all
deb http://autoinstall.plesk.com/PHP74_17/ bionic all
deb http://autoinstall.plesk.com/debian/SITEBUILDER_17.8.12 all all
deb [arch=amd64] http://autoinstall.plesk.com/PMM_0.1.11 bionic all
deb [arch=amd64] http://autoinstall.plesk.com/NODE_0.0.2 all all
deb https://packages.grafana.com/oss/deb stable main
deb [arch=amd64] https://download.docker.com/linux/ubuntu bionic stable
\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\
3) The NEED to comment out "#" the duplication in soutrces in other files not being the "/etc/apt/sources.list" file
1. Take note of the files and duplicate lines:
2. Make a backup of the files (sources.list in our example):
# cp /etc/apt/sources.list /etc/apt/sources.list.bak
3. Open the files with your favorite editor (e.g.: vi, nano, etc.).
4. Comment out the duplicate lines with an # to maintain the line number reference.
5. Remove the duplicate lines.
6. Save the files.
\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\
(appstreamcli:5851): GLib-CRITICAL **: g_strchomp: assertion 'string != NULL' failed
AppStream cache update completed, but some metadata was ignored due to errors.
Reading package lists... Done
W: Target Packages (all/binary-amd64/Packages) is configured multiple times in /etc/apt/sources.list:13 and /etc/apt/sources.list.d/plesk-ext-nodejs.list:1
W: Target Packages (all/binary-all/Packages) is configured multiple times in /etc/apt/sources.list:13 and /etc/apt/sources.list.d/plesk-ext-nodejs.list:1
W: Target Translations (all/i18n/Translation-en_US) is configured multiple times in /etc/apt/sources.list:13 and /etc/apt/sources.list.d/plesk-ext-nodejs.list:1
W: Target Translations (all/i18n/Translation-en) is configured multiple times in /etc/apt/sources.list:13 and /etc/apt/sources.list.d/plesk-ext-nodejs.list:1
W: Target DEP-11 (all/dep11/Components-amd64.yml) is configured multiple times in /etc/apt/sources.list:13 and /etc/apt/sources.list.d/plesk-ext-nodejs.list:1
W: Target DEP-11-icons (all/dep11/icons-64x64.tar) is configured multiple times in /etc/apt/sources.list:13 and /etc/apt/sources.list.d/plesk-ext-nodejs.list:1
W: Target Packages (main/binary-amd64/Packages) is configured multiple times in /etc/apt/sources.list:14 and /etc/apt/sources.list.d/plesk-ext-grafana.list:1
W: Target Packages (main/binary-i386/Packages) is configured multiple times in /etc/apt/sources.list:14 and /etc/apt/sources.list.d/plesk-ext-grafana.list:1
W: Target Packages (main/binary-all/Packages) is configured multiple times in /etc/apt/sources.list:14 and /etc/apt/sources.list.d/plesk-ext-grafana.list:1
W: Target Translations (main/i18n/Translation-en_US) is configured multiple times in /etc/apt/sources.list:14 and /etc/apt/sources.list.d/plesk-ext-grafana.list:1
W: Target Translations (main/i18n/Translation-en) is configured multiple times in /etc/apt/sources.list:14 and /etc/apt/sources.list.d/plesk-ext-grafana.list:1
W: Target DEP-11 (main/dep11/Components-amd64.yml) is configured multiple times in /etc/apt/sources.list:14 and /etc/apt/sources.list.d/plesk-ext-grafana.list:1
W: Target DEP-11-icons (main/dep11/icons-64x64.tar) is configured multiple times in /etc/apt/sources.list:14 and /etc/apt/sources.list.d/plesk-ext-grafana.list:1
W: Target Packages (all/binary-amd64/Packages) is configured multiple times in /etc/apt/sources.list.d/plesk-ext-panel-migrator.list:1 and /etc/apt/sources.list.d/plesk-ext-site-import.list:1
W: Target Packages (all/binary-all/Packages) is configured multiple times in /etc/apt/sources.list.d/plesk-ext-panel-migrator.list:1 and /etc/apt/sources.list.d/plesk-ext-site-import.list:1
W: Target Translations (all/i18n/Translation-en_US) is configured multiple times in /etc/apt/sources.list.d/plesk-ext-panel-migrator.list:1 and /etc/apt/sources.list.d/plesk-ext-site-import.list:1
W: Target Translations (all/i18n/Translation-en) is configured multiple times in /etc/apt/sources.list.d/plesk-ext-panel-migrator.list:1 and /etc/apt/sources.list.d/plesk-ext-site-import.list:1
W: Target DEP-11 (all/dep11/Components-amd64.yml) is configured multiple times in /etc/apt/sources.list.d/plesk-ext-panel-migrator.list:1 and /etc/apt/sources.list.d/plesk-ext-site-import.list:1
W: Target DEP-11-icons (all/dep11/icons-64x64.tar) is configured multiple times in /etc/apt/sources.list.d/plesk-ext-panel-migrator.list:1 and /etc/apt/sources.list.d/plesk-ext-site-import.list:1
W: Target Packages (all/binary-amd64/Packages) is configured multiple times in /etc/apt/sources.list.d/plesk.list:8 and /etc/apt/sources.list.d/plesk.list:9
W: Target Packages (all/binary-i386/Packages) is configured multiple times in /etc/apt/sources.list.d/plesk.list:8 and /etc/apt/sources.list.d/plesk.list:9
W: Target Packages (all/binary-all/Packages) is configured multiple times in /etc/apt/sources.list.d/plesk.list:8 and /etc/apt/sources.list.d/plesk.list:9
W: Target Translations (all/i18n/Translation-en_US) is configured multiple times in /etc/apt/sources.list.d/plesk.list:8 and /etc/apt/sources.list.d/plesk.list:9
W: Target Translations (all/i18n/Translation-en) is configured multiple times in /etc/apt/sources.list.d/plesk.list:8 and /etc/apt/sources.list.d/plesk.list:9
W: Target DEP-11 (all/dep11/Components-amd64.yml) is configured multiple times in /etc/apt/sources.list.d/plesk.list:8 and /etc/apt/sources.list.d/plesk.list:9
W: Target DEP-11-icons (all/dep11/icons-64x64.tar) is configured multiple times in /etc/apt/sources.list.d/plesk.list:8 and /etc/apt/sources.list.d/plesk.list:9
W: Target Packages (all/binary-amd64/Packages) is configured multiple times in /etc/apt/sources.list:13 and /etc/apt/sources.list.d/plesk-ext-nodejs.list:1
W: Target Packages (all/binary-all/Packages) is configured multiple times in /etc/apt/sources.list:13 and /etc/apt/sources.list.d/plesk-ext-nodejs.list:1
W: Target Translations (all/i18n/Translation-en_US) is configured multiple times in /etc/apt/sources.list:13 and /etc/apt/sources.list.d/plesk-ext-nodejs.list:1
W: Target Translations (all/i18n/Translation-en) is configured multiple times in /etc/apt/sources.list:13 and /etc/apt/sources.list.d/plesk-ext-nodejs.list:1
W: Target DEP-11 (all/dep11/Components-amd64.yml) is configured multiple times in /etc/apt/sources.list:13 and /etc/apt/sources.list.d/plesk-ext-nodejs.list:1
W: Target DEP-11-icons (all/dep11/icons-64x64.tar) is configured multiple times in /etc/apt/sources.list:13 and /etc/apt/sources.list.d/plesk-ext-nodejs.list:1
W: Target Packages (main/binary-amd64/Packages) is configured multiple times in /etc/apt/sources.list:14 and /etc/apt/sources.list.d/plesk-ext-grafana.list:1
W: Target Packages (main/binary-i386/Packages) is configured multiple times in /etc/apt/sources.list:14 and /etc/apt/sources.list.d/plesk-ext-grafana.list:1
W: Target Packages (main/binary-all/Packages) is configured multiple times in /etc/apt/sources.list:14 and /etc/apt/sources.list.d/plesk-ext-grafana.list:1
W: Target Translations (main/i18n/Translation-en_US) is configured multiple times in /etc/apt/sources.list:14 and /etc/apt/sources.list.d/plesk-ext-grafana.list:1
W: Target Translations (main/i18n/Translation-en) is configured multiple times in /etc/apt/sources.list:14 and /etc/apt/sources.list.d/plesk-ext-grafana.list:1
W: Target DEP-11 (main/dep11/Components-amd64.yml) is configured multiple times in /etc/apt/sources.list:14 and /etc/apt/sources.list.d/plesk-ext-grafana.list:1
W: Target DEP-11-icons (main/dep11/icons-64x64.tar) is configured multiple times in /etc/apt/sources.list:14 and /etc/apt/sources.list.d/plesk-ext-grafana.list:1
W: Target Packages (all/binary-amd64/Packages) is configured multiple times in /etc/apt/sources.list.d/plesk-ext-panel-migrator.list:1 and /etc/apt/sources.list.d/plesk-ext-site-import.list:1
W: Target Packages (all/binary-all/Packages) is configured multiple times in /etc/apt/sources.list.d/plesk-ext-panel-migrator.list:1 and /etc/apt/sources.list.d/plesk-ext-site-import.list:1
W: Target Translations (all/i18n/Translation-en_US) is configured multiple times in /etc/apt/sources.list.d/plesk-ext-panel-migrator.list:1 and /etc/apt/sources.list.d/plesk-ext-site-import.list:1
W: Target Translations (all/i18n/Translation-en) is configured multiple times in /etc/apt/sources.list.d/plesk-ext-panel-migrator.list:1 and /etc/apt/sources.list.d/plesk-ext-site-import.list:1
W: Target DEP-11 (all/dep11/Components-amd64.yml) is configured multiple times in /etc/apt/sources.list.d/plesk-ext-panel-migrator.list:1 and /etc/apt/sources.list.d/plesk-ext-site-import.list:1
W: Target DEP-11-icons (all/dep11/icons-64x64.tar) is configured multiple times in /etc/apt/sources.list.d/plesk-ext-panel-migrator.list:1 and /etc/apt/sources.list.d/plesk-ext-site-import.list:1
W: Target Packages (all/binary-amd64/Packages) is configured multiple times in /etc/apt/sources.list.d/plesk.list:8 and /etc/apt/sources.list.d/plesk.list:9
W: Target Packages (all/binary-i386/Packages) is configured multiple times in /etc/apt/sources.list.d/plesk.list:8 and /etc/apt/sources.list.d/plesk.list:9
W: Target Packages (all/binary-all/Packages) is configured multiple times in /etc/apt/sources.list.d/plesk.list:8 and /etc/apt/sources.list.d/plesk.list:9
W: Target Translations (all/i18n/Translation-en_US) is configured multiple times in /etc/apt/sources.list.d/plesk.list:8 and /etc/apt/sources.list.d/plesk.list:9
W: Target Translations (all/i18n/Translation-en) is configured multiple times in /etc/apt/sources.list.d/plesk.list:8 and /etc/apt/sources.list.d/plesk.list:9
W: Target DEP-11 (all/dep11/Components-amd64.yml) is configured multiple times in /etc/apt/sources.list.d/plesk.list:8 and /etc/apt/sources.list.d/plesk.list:9
W: Target DEP-11-icons (all/dep11/icons-64x64.tar) is configured multiple times in /etc/apt/sources.list.d/plesk.list:8 and /etc/apt/sources.list.d/plesk.list:9
\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\
4) A list of which files to preserver configuration for and which to update
\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\
When prompted, choose to keep local version config installed for:
• /opt/psa/etc/apparmor.d/usr.lib.dovecot.dovecot-lda
• /etc/awstats/awstats.conf
• /usr/share/rsyslog/50-default.conf
• /etc/cron.daily/spamassassin
• /etc/apache2/apache2.conf
• /etc/pam.d/common-*
• /etc/rsyslog.d/50-default.conf
• /usr/share/psa-roundcube/config/config.inc.php
• /etc/pam.d/common-*
And tehre are few more CRON to be kept local if I understand correctly
\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\
\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\
It is safe to install maintainer's version for the configuration files below when prompted:
• /etc/apparmor.d/*
• /etc/ssh/sshd_config
\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\
5) Comments about expected errors messages, as:
\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\
You already have it in the newest version (1.18.4ubuntu1.6). If a new version exists by the time you run this command, you will be prompted to update it.
The error
The following packages have unmet dependencies:
dpkg-dev: Breaks: debhelper (< 10.10.1~) but 9.20160115ubuntu3 is to be installed
Breaks: debhelper:i386 (< 10.10.1~)
E: Error, pkgProblemResolver::Resolve generated breaks, this may be caused by held packages.
stems from unresolved dependencies. Try running the command # sudo apt-get install -f. It will attempt to correct a system that has broken dependencies, after which you’ll be able to install the package in question.
\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\
6. remove a type of "d" in "mysqld". The correct SSH CLO should be:
\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\
# service mysql stop
# service mysql start
\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\
7. Clear comment about the different kinds of DataBases. It's still not clear on the article
\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\
Add to the MySQL config file /etc/mysql/my.cnf the string innodb_fast_shutdown=0 in the [mysqld] section
# systemctl stop mysql.service; systemctl start mysql.service
Since you are using MySQL 5.7.33 instead of MariaDB, the line innodb_fast_shutdown=0 is entered into file /etc/mysql/my.cnf and must be removed from it afterward. Stop and restart MySQL:
# service mysql stop
# service mysql start
\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\
8. Expected Apache error fix:
\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\
When prompted, keep the previous version of /etc/apache2/apache2.conf
Warning: after this operation, apache2 may not start due to problems with http_proxy module.
• Disable it by removing file /etc/apache2/mods-enabled/proxy_http.load
# rm /etc/apache2/mods-enabled/proxy_http.load
• Start apache:
# systemctl start apache2.service
Note: Apache was missing on Plesk GUI "Service Management" to be fixed.
\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\
9. Some errors may occur and will require additional fixes AFTER the Ubuntu 18 is installed, among them:
\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\
Errors were encountered while processing:
psad
E: Sub-process /usr/bin/dpkg returned an error code (1)
Errors were encountered while processing:
/var/cache/apt/archives/prelude-utils_4.1.0-4_amd64.deb
E: Sub-process /usr/bin/dpkg returned an error code (1)
Plesk WordPress Security couldn't strengthen new diredctory Read-Write permissions as user used was changed to "root"
Apache server line not appearing on Plesk "Service Management"
\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\
10. The need to make sure there are NO Blocking of DEB packages IPs on the Plesk FireWall:
\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\
White List security.ubuntu.com Allow incoming from 91.189.88.0/24, 91.189.88.142, 91.189.88.152, 91.189.91.0/24, 91.189.91.38, 91.189.91.39 on all ports
White List Ubuntu Upgrade Allow incoming from 156.146.36.23, 156.146.36.0/24 on all ports
White List ppa.launchpad.net Allow incoming from 91.189.95.0/24, 91.189.95.85 on all ports
White List grafana.com Allow incoming from 34.120.177.0/24, 34.120.177.193 on all ports
White List docker.com Allow incoming from 34.194.52.0/24, 34.194.52.218, 52.204.250.0/24, 52.204.250.5, 52.3.194.0/24, 52.3.194.66 on all ports
White List plesk.com Allow incoming from 18.219.194.0/24, 18.219.194.42, 195.214.233.0/24, 195.214.233.128, 35.157.39.0/24, 35.157.39.158 on all ports
White List postgresql.org Allow incoming from 217.196.149.0/24, 217.196.149.50 on all ports
White List deb.nodesource.com Allow incoming from 44.240.36.0/24, 44.240.36.18, 52.42.126.0/24, 52.42.126.122, 54.148.103.0/24, 54.148.103.79 on all ports
White List esm.ubuntu.com Allow incoming from 91.189.88.0/24, 91.189.88.182, 91.189.88.183, 91.189.91.0/24, 91.189.91.46, 91.189.91.47 on all ports
White List autoinstall.plesk.com Allow incoming from 156.146.36.0/24, 156.146.36.23, 195.181.168.0/23, 195.181.169.25, 195.181.169.7, 89.187.176.0/22, 89.187.177.17 on all ports
White List archive.ubuntu.com Allow incoming from 3.96.211.0/24, 3.96.211.9, 35.182.200.0/24, 35.182.200.35, 35.182.241.0/24, 35.182.241.113, 35.183.6.0/24, 35.183.6.146 on all ports
\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\
11. A need to activate the Plesk FireWall after completing upgrade by:
# iptables -A INPUT -j LOG
# iptables -A FORWARD -j LOG
and then apply and confirm only once at the end:
On first SSH:
# /usr/local/psa/bin/modules/firewall/settings -a
On second SSH:
# /usr/local/psa/bin/modules/firewall/settings -c
As per the root cause of rules application issue: the files I removed are created by rules activation script and should be removed at the end of the script
Other firewall rules activation process could be executed and stuck when you launched another one.
To avoid such issue, check if there any running firewall processes:
# ps aux | grep [f]irewall-new.sh
Still no migration path for Ubuntu 16.04 to 18.04? It is almost a year ago, that Ubuntu 18.04 is supported by Plesk (fresh installation). Is there any ETA on this topic? A migration to another server with fresh installed plesk is no option for us. We really need this upgrade/migration.
Upgrade from Ubuntu 16 to Ubuntu 18 is needed
This is taking too long.. There has to be a upgrade from 16 to 18 and 18 to 20 aswel, cuz 18 is already outdated nowadays..
Hi,
For all those waiting for the guide for newer operating systems, please be patient since we're finishing our tests and verifications that the procedure is safe to apply and won't break your servers :)
Ubuntu 16->18 distro-upgrade is going to be public very soon (during this week I believe).
For the procedure of Ubuntu 18->20 and Debian 9->10, to be honest, we're having some troubles with package management and dependencies while the distro-upgrade that without dirty hacks are difficult to overcome, something not suitable for inexperienced users.
Thanks for your patience.
Is there any news about the upgrade capability from Ubuntu 16.04 to 18.04? Some status or progress information? An idea of an ETA?
Ubuntu 20.04 is coming out in 3 weeks and yet, there is not upgrade to its predecessor. This is really disappointing. So we customer can expect that an upgrade to 20.04 will arrive in 2022 or later? It is really frustrating to be forced to work with such an old system. Currently it is 4 years old. Many Ubuntu packages are really outdated and even though it is an LTS and Ubuntu delivers at least security packages, this is NOT true for all packages. In fact the very most packages are not included within this support. Basically our server is running with a lot of very outdated and unsupported packages now. This is a big security problem:
Hello @Ivan Postnikov is there still no ETA for the dist-upgrade from Ubuntu 16.04 to 18.04? Given that 20.04 is now already available, that step is clearly overdue.
Given the most recent announcement of again increasing prices, I guess this is clearly something we can expect from a product where prices are continuously rising.
Best regards,
Still no ETA? Even an approximation would help.
@Marian
Instruction for an upgrade to Debian 9 will be added to this article soon.
Click "Follow" to be notified when the article will be updated.
Helloooooo? What about the overdue and long-promised upgrade from Ubuntu 16 to 18?
a question regarding the 18->20 upgrade, I have only mysql DBs, do I need to convert to MariaDB?
+1 for getting an upgrade path from Ubuntu 16.04 to 18.04. It is about time.
Hi, since Ubuntu 18.04.1 was released a month ago, when the upgrade will be available ?
+ Do you recommend an upgrade or a migration on a fresh install ?
Thanks
Sounds great Anton Maslov. One more day if you do not want to break your (flexible) promise...
Only the pre-installed version and their updates are usable.
A dist-upgrade attempt will result in a system that is no longer running after a reboot.
I'm still waiting for the backup process of 300 gigabytes (for 6 hours) to repair this bullshit ... please put a hint right over the call.
Reason:
The virtualization software of hosteurope is probably not compatible with the updated kernel and no longer find the VM.
@See: https://www.hosteurope.de/faq/server/server-allgemeines/selbst-installation-sicherheitsupdates/
Hi @Alexandr.
Thanks for your offer, but I cannot submit a ticket since I'm on a licence key bought from Hetzner, which does not provide free support. And my company is not willing to pay for support on a thing that looks like a plesk bug... It's a deadlock! Can you help otherwise?
Hi Robert Asilbekov,
I was advised to update from Ubuntu server 16.04, as it’s Plesk Support is about to soon end.
I have followed the Plesk guidance (https://support.plesk.com/hc/en-us/articles/213410369-How-to-perform-dist-upgrade-procedure-on-Linux-server-with-Plesk-?source=search ) for upgrade, however upgrade failed, and I had to restore an AWS snapshot.
On step (2) you instruct to install a remote management module on the server (This is because, in some tests, sshd service could not be started during the process). Please provide clear and exact instructions how to do so.
On steps (4) and (5) you instruct to Add to the mariadb config file /etc/mysql/mariadb.conf.d/50-server.cnf to the string innodb_fast_shutdown=0 in the [mysqld] section. And then, restart the DB server to apply changes:
# systemctl stop mariadb.service ; systemctl start mariadb.service
I don’t think I have anything named as mariadb. Can you please clarify and provide full relevant guidance for all configurations?
On step (6) you ask to rremove packages that are no longer supported:
# apt-get remove samba-common samba-libs samba-vfs-modules
I didn’t have them installed on the server. Is this Ok?
Then I had a problem with was in performing update step (1), which is to update source.list file and configure the repository for the OS release that is going to upgrade to:
# cat /etc/apt/sources.list
deb http://archive.ubuntu.com/ubuntu bionic main restricted universe
deb http://archive.ubuntu.com/ubuntu bionic-updates main restricted universe
deb http://security.ubuntu.com/ubuntu bionic-security main restricted universe multiverse
deb http://autoinstall.plesk.com/PSA_18.0.31/ bionic all
deb http://autoinstall.plesk.com/ubuntu/PHP70_17 bionic all
deb http://autoinstall.plesk.com/PHP71_17/ bionic all
deb http://autoinstall.plesk.com/PHP72_17/ bionic all
deb http://autoinstall.plesk.com/PHP73_17/ bionic all
deb http://autoinstall.plesk.com/PHP74_17/ bionic all
deb http://autoinstall.plesk.com/debian/SITEBUILDER_17.8.12 all all
deb [arch=amd64] http://autoinstall.plesk.com/PMM_0.1.11 bionic all
deb [arch=amd64] http://autoinstall.plesk.com/NODE_0.0.2 all all
deb https://packages.grafana.com/oss/deb stable main
deb [arch=amd64] https://download.docker.com/linux/ubuntu bionic stable
As I saw no contradiction of the previous content of this file, I have ADDED the above at the end of the file. Possibly the previous content had to be deleted. Is that so?
Then you instruct Remove from the mariadb config file /etc/mysql/mariadb.conf.d/50-server.cnf the string innodb_fast_shutdown=0 in the [mysqld] section, added at the beginning of this process. And then, Reboot the server.
I do NOT have mariadb. Please advise.
Then you asked to update dpkg package:
# apt-get install dpkg
I don’t think I have it, so to the best of my memory, the update did not take place. Please advise.
Second thing is you instruct on stage (14) to reboot the server. Can you please provide exact clear CLI command to execute?
I am attaching various print screens and pictures of the failing points during the process.
Can you please provide a suitable correct full guidance of the upgrade process?
Also, the migration option is NOT well described on Plesk. It’s not clear:
1. How to use two Plesk licenses or get a second trial license
2. How to point from old not connected instance into the NEWLY created Plesk second server via IPs
3. What components should be selected and how?
4. Is migration full?
5. Can an AWS snapshot be used to create an upgrades Ubuntu server directly, not only to migrate to it?
6. Is there a FULL Plesk enabled back-up (the Plesk regular Backup does NOT hold full server configuration), which can easily used to restore a NEWLY created Plesk server with upgraded Ubuntu?
I find that Ubuntu 18.04 supports upgrading from 16.04 through do-release-upgrade. You can review how to upgrade to the new version
The recommended upgrade path using the migration guide is an economical disaster, to say the least.
Only because plesk fell short on all promises, we had to go with the migration guide a couple of months ago. We had so much pressure from our clients, that we had to upgrade, especially because many packages had been at their end of life. One of the reason is that not all ubuntu packages have long time support. Anyway. The migration took us weeks to prepare and complete. The migration assistant is so poorly build and has so many bugs, that many things are not getting migrated even though they are part of plesk itself. Worse than that is of course all the other stuff. If you are using a server for many years for many clients, you will customise it to your and your clients' needs. Plesk is just offering basic packages (web, apps, dns, mail) and it is obvious that admins have to tweak the server around plesk.
The migration took hours, which was downtime, and even with weeks of preparation we still had to fix so many things afterwards. The customers were annoyed and we too.
And I just want to repeat myself: the migration was an economical catastrophe for us. Just make the calculation for yourself. How many client you have to have to get paid for this immense effort and loss of confidence? A migration is the worst upgrade path and should not be the recommended one!
So far plesk has not delivered anything they promised, not even a good nor expectable excuse.
Thanks, too. I want to do the upgrade now. therefor I've another two questions. I use a dedicated server by Ionos in Germany. I know you or Plesk work together in some ways. Upgrade to Ubuntu 20 is shown in shell/cli since a few months.Sorry for the questions, but I want to take as little as possible risks.
Is it possible to use the 1and1 repositiories/sources or do you suggest better and absolutely the sources by Aachen university from the tutorial?
On my server MariaDB is running. Since my last MariaDB upgrade from 10.4 to 10.5(.8) the configuration paths seemed to be changed a little. my.cnf is a link to /etc/mysql/mariadb.cnf (to set global defaults). I would set here the
innodb_fast_shutdown=0
in the [mysqld] section. Is it right, or perhaps /etc/mysql/mariadb.conf.d/50-server.cnf where I already made Fine tuning settings?this did not go well for me...
Hello @Oliver,
Thank you for the feedback.
I will need some time to clarify if there's the exact ETA.
Me or my colleague will let you know when receive the information.
I was quite scared to do this after so many comments with problems, but update ubuntu 18 -> 20 went smoothly. No problems whatsoever.
And migration was not really option for me, since almost all my domains have DNSSEC signatures and they cannot be migrated.
Hello Μίστερ Μολ,
The case looks quite complex to discuss it in article comments. Please submit a ticket for us and we will be glad to investigate the issue and assist you.
Hi,
@Sebastian and @Andy are problems solved?
I need to upgrade my debian server with plesk12.5 from wheezy to jessie this weekend. Can you share any recommendations about this upgrade?
Please sign in to leave a comment.