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/MySQL 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 is supported for Plesk Onyx version 17.8.
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: 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
104 comments
Hi, I'm running Debian 8.11 and I'd like to upgrade to Debian 9.
But my Plesk version is Obsidian 18.0.28 Update #3 and the guide is warning that it won't work.
How to solve?
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?
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
Same question as Lars Oeschey: I have a local MySQL-DB server. Is it safe to upgrade from Ubuntu 18 to Ubuntu 20 without performing a migration of all our 256 databases to MariaDB first?
@Elisabeth Kahnert In case MySQL is installed, you can update it to the next major version provided by the vendor. (Performing the dist-upgrade, step #4)
In case you need to switch to the MariaDB, I suggest you refer to the following articles to review the compatibility and features between particular MySQL and MariaDB versions.
https://mariadb.com/kb/en/mariadb-vs-mysql-compatibility/
https://mariadb.com/kb/en/mariadb-vs-mysql-features/
For everyone struggling with IMAP login problems (using Dovecot / Roundcube login not working, ...) after the upgrade, see this article: https://support.plesk.com/hc/en-us/articles/360017198440-Unable-to-log-in-to-Roundcube-webmail-on-Plesk-server-Can-t-load-DH-parameters-dh-key-too-small
This fixed the error on my side.
Couple of questions:
(1) How do I verify that Remote management module is installed on my server, and how do I install it?
(2) The instructions for msmtp indicate that you can install it through plesk installer or via command:
"plesk installer add --components msmtp"
What is the plesk installer?
I notice on the step near the end to re-install plesk commands through the plesk installer, the command is simply:
"plesk installer"
This makes me think that the command given to install msmtp is actually the plesk installer and that the use of the word 'or' is a typo.
I installed Ubuntu 18.04 and installed Plesk. I ran the command 'do-release-upgrade' and the OS updated fine. Then, after a reboot, I ran the Plesk Installer and Plesk updated itself. Can Plesk confirm if this is a working possibility? It seems like it is.
Hello,
i tried to upgrade from ubunto 16 to 18 as described. My Problem is that "autoinstall.plesk.com/PSA_18.0.34/" could not found on your servers and this is the latest version for 16. i have to put this in to do the upgrade. What to do now?
Thanks for help.
For ubuntu 16 to 18, apt upgrade will fail
Instead of apt upgrade use
Which will remove conflicting packages and automatically trigger the upgrade procedure
You will also encounter this issue during the upgrade, just fix it following the answer
The package imagemagic-common also needs to be removed if installed
Regarding "Rename configuration from
bind9
tonamed
": Should this really be done AFTER the reboot? Shouldn't this be moved BEFORE so it gets activated on reboot?Upgrade Ubuntu 20 to 22 did not work. After reboot there occured an error, when trying
plesk installer update --skip-cleanup
**** Package scriptlet completed successfully.
STOP - installing AT Thu Jun 16 21:56:24 CEST 2022
ok
==> Checking for: mail_spam_restore... not found, skipped
Trying to configure SSL ciphers and protocols for: mail-smtp... done
Trying to restart service postfix... done
done
**** Product perform-deferred-actions completed successfully.
STOP Bootstrapper 18.0.44 perform-deferred-actions AT Thu Jun 16 21:57:08 CEST 2022
START update_history
Trying to start service mariadb... active
done
Trying to establish test connection... connected
done
**** [update_history] completed successfully.
STOP update_history
START Bootstrapper 18.0.44 perform-deferred-actions AT Fri Jun 17 09:50:56 CEST 2022
**** Product perform-deferred-actions started.
done
**** Product perform-deferred-actions completed successfully.
STOP Bootstrapper 18.0.44 perform-deferred-actions AT Fri Jun 17 09:50:56 CEST 2022
START update_history
Trying to start service mariadb... active
done
Trying to establish test connection... connected
done
**** [update_history] completed successfully.
STOP update_history
START psa-horde-5.2.23 installing AT Fri Jun 17 09:53:15 CEST 2022
Trying to start service mariadb... active
done
Trying to establish test connection... connected
done
Trying to upgrade and repair Horde webmail (files stage)... Upgrade or repair for 'horde' (stage 'files') is not required
done
**** Package psa-horde scriptlet completed successfully.
STOP psa-horde-5.2.23 installing AT Fri Jun 17 09:53:16 CEST 2022
START psa-firewall-18.0 installing AT Fri Jun 17 09:53:16 CEST 2022
Trying to start service mariadb... active
done
Trying to establish test connection... connected
done
Trying to upgrade and repair Firewall (post stage)... Upgrade or repair for 'firewall' (stage 'post') is not required
done
**** Package psa-firewall scriptlet completed successfully.
STOP psa-firewall-18.0 installing AT Fri Jun 17 09:53:16 CEST 2022
START plesk-mail-pc-driver-18.0 installing AT Fri Jun 17 09:53:16 CEST 2022
Trying to upgrade and repair Postfix Plesk mail driver (post stage)... Upgrade or repair for 'mail-pc-driver' (stage 'post') is not required
done
**** Package plesk-mail-pc-driver scriptlet completed successfully.
STOP plesk-mail-pc-driver-18.0 installing AT Fri Jun 17 09:53:17 CEST 2022
START - installing AT Fri Jun 17 09:54:22 CEST 2022
Trying to install sendmail wrapper... Removing 'diversion of /usr/sbin/sendmail to /usr/lib/plesk-9.0/sendmail/sendmail.postfix by plesk-mail-pc-driver'
Adding 'diversion of /usr/sbin/sendmail to /usr/lib/plesk-9.0/sendmail/sendmail.postfix by plesk-mail-pc-driver'
Removing 'diversion of /usr/sbin/postdrop to /usr/lib/plesk-9.0/sendmail/postdrop by plesk-mail-pc-driver'
dpkg-statoverride: warning: no override present
Adding 'diversion of /usr/sbin/postdrop to /usr/lib/plesk-9.0/sendmail/postdrop by plesk-mail-pc-driver'
done
**** Package scriptlet completed successfully.
STOP - installing AT Fri Jun 17 09:54:23 CEST 2022
START Bootstrapper 18.0.44 perform-deferred-actions AT Sat Jun 18 02:08:42 CEST 2022
**** Product perform-deferred-actions started.
done
**** Product perform-deferred-actions completed successfully.
STOP Bootstrapper 18.0.44 perform-deferred-actions AT Sat Jun 18 02:08:42 CEST 2022
START update_history
Trying to start service mariadb... active
done
Trying to establish test connection... connected
done
**** [update_history] completed successfully.
STOP update_history
START Bootstrapper 18.0.44 perform-deferred-actions AT Sun Jun 19 14:53:01 CEST 2022
**** Product perform-deferred-actions started.
done
**** Product perform-deferred-actions completed successfully.
STOP Bootstrapper 18.0.44 perform-deferred-actions AT Sun Jun 19 14:53:01 CEST 2022
START update_history
Trying to start service mariadb... active
done
Trying to establish test connection... connected
done
**** [update_history] completed successfully.
STOP update_history
START Bootstrapper 18.0.44 prep-install for BASE AT Sun Jun 19 16:11:39 CEST 2022
**** Product prep-install started.
Create user 'psaadm' and group 'psaadm'
Group 'psaadm' already exists
Checking for the user 'psaadm'...
User 'psaadm' already exists
Create group 'swkey-data'
Group 'swkey-data' already exists
Trying to add supplementary group 'swkey-data' for user 'psaadm'... already there
Create group 'psaserv'
Group 'psaserv' already exists
Trying to add supplementary group 'psaserv' for user 'psaadm'... already there
Create group 'psacln'
Group 'psacln' already exists
Trying to got legacy variables... done
Trying to save legacy variables... done
Checking that /opt/psa/bin/chrootsh registered as login shell...
===> Performing safe prep-install database actions
===> Upgrading database
Trying to start service mariadb... deactivating
Warning: start service mariadb failed
Trying to establish test connection... ERROR 2002 (HY000): Can't connect to local server through socket '/run/mysqld/mysqld.sock' (2)
Why is everything so complicated on this site
@Albert Zuzej
You have both services enable mysql.service and mariadb.service. you should deactivate mysql.service from init.d folder with following commands:
1)
> service mysql stop; service mariadb stop
2)
> mv /etc/init.d/mysql /root
3)
> systemctl daemon reload
4)
> service mariadb start
Please sign in to leave a comment.