Dist-Upgrade Support
Starting with Plesk 12.5, it is possible to upgrade the operating system on a Plesk server. The following dist-upgrade upgrade paths are supported in Plesk:
- Debian 6 to Debian 7
- Debian 7 to Debian 8
- Ubuntu 12.04 to Ubuntu 14.04
Warning: If you are running Plesk on a Linux distribution that is not Debian 6 or 7, or Ubuntu 12.04, do not attempt to upgrade the operating system. Such upgrade paths are not supported, and attempting to upgrade will damage your Plesk installation.
Warning: Read the instructions below carefully and follow them closely. Failure to do so may result in Plesk and its services being inoperable.
To perform the dist-upgrade, follow these steps:
- Before performing the dist-upgrade, make sure you have read about the possible issues you may encounter:
- If you are upgrading from Debian 6, read this: https://www.debian.org/releases/wheezy/amd64/release-notes/ch-upgrading.en.html#trouble.
- If you are upgrading from Debian 7, read this: https://www.debian.org/releases/stable/i386/release-notes/ch-upgrading.en.html#trouble.
- Run the pre-upgrade script. The pre-upgrade script is named
distupgrade.helper.<OS.old-OS.new>_pre.sh
and is located in the/usr/local/psa/bin
directory. - Perform the dist-upgrade according to the operating system documentation:
- Debian 6: Follow the instructions found here: http://www.debian.org/releases/wheezy/i386/release-notes/ch-upgrading.html.
- Debian 7: Follow the instructions found here: https://www.debian.org/releases/jessie/i386/release-notes/ch-upgrading.en.html
-
Ubuntu 12.04: Use the
do-release-upgrade
tool, as described here: https://help.ubuntu.com/14.04/serverguide/installing-upgrading.html
- Run the post-upgrade script. The post-upgrade script is named
distupgrade.helper.<OS.old-OS.new>_post.sh
and is located in the/usr/local/psa/bin
directory.
After the post-upgrade script finishes, Plesk should be up and running. You can check the upgrade log /var/log/plesk/install/plesk-distupgrade.log for detailed information about the upgrade.
Recovering from a Failed Dist-Upgrade
To recover from a failed dist-upgrade, follow these steps:
Check updates for system packages
- Make sure that both
/etc/apt/sources.list
and the repositories in/etc/apt/sources.list.d/
are switched to the new OS release (i.e. "jessie" if you are upgrading to Debian 8, "wheezy", to Debian 7, and "trusty", to Ubuntu 14). - Run the
apt-get update
,apt-get upgrade
, andapt-get dist-upgrade
commands. If no packages need to be updated, then the upgrades have already been installed. Otherwise, packages need to be upgraded. See the Upgrade packages section below for details.
Check updates for Plesk packages
- Inspect the list of installed packages. Run the
dpkg -l | less
command. Plesk packages are usually prefixed or suffixed with "plesk-", "psa", or "sw-". Make sure that the version of all Plesk packages contains the name of the OS you are upgrading to (e.g. "debian8" if you are upgrading from Debian 7). - If the version of one or more Plesk packages contains the name of the OS you are upgrading from (e.g. "debian6" if you are upgrading from Debian 6), those packages need to be upgraded. See the Upgrade packages section below for details.
Upgrade packages
- Enable Plesk repositories.
- Run the
plesk-installer --skip-cleanup
command (add other options as necessary). - Select the currently installed Plesk version, e.g. 12.5.30.
- Wait for the list of components to load, then cancel the installation.
- The file
/etc/apt/sources.list.d/50sw_autoinstaller.list
will be created.
- Run the
- Edit apt repositories (
/etc/apt/sources.list
and/etc/apt/sources.list.d/*.list
) by replacing the OS codename with the new one, as necessary (i.e. replace "precise" with "trusty", "squeeze" with "wheezy", and "wheezy" with "jessie"). - Upgrade the packages.
- Run the
apt-get update
command. - Run the
apt-get upgrade
command. - Run the
apt-get dist-upgrade
command. - If the installation of packages fails, run the
apt-get install -f
command to reconfigure the packages that were not installed successfully, fix any errors, and try again.
- Run the
Upgrade Plesk components
- After packages are upgraded, run the Plesk Installer again and install updates for the installed components.
Repair Plesk
- Run the
plesk repair installation
command. - Run the
plesk repair all -n
command to check for problems with the Plesk configuration. - If any problems are detected, you can try to fix them automatically with the plesk repair command (use the corresponding aspect, e.g.
plesk repair mail
orplesk repair web
). If this fails, try fixing the detected issues manually or contact support.
Potential Issues
- The "API module structure...is garbled" error message when configuring Apache indicates that Apache was updated, but one or more modules were not. Disable the affected modules to resolve the issue.
- The "No matches for the wildcard '*.conf'" error message when configuring Apache indicates that Apache was updated, but one or more of its configuration files found in
/etc/apache2/conf.d
and/etc/apache2/plesk.conf.d
still contain theInclude
directive with the old syntax. ReplaceInclude
withIncludeOptional
to resolve the issue. - The "Could not open configuration file ..." error message when starting Apache may indicate that the specified file is a symlink pointing to a non-existent file. Remove the symlink to resolve the issue.
- The "Invalid command 'LockFile'" error message when starting Apache indicates that Apache was updated, but the configuration file
/etc/apache2/apache2.conf
contains the deprecatedLockFile
directive. Replace the line
LockFile ${APACHE_LOCK_DIR}/accept.lock
with the line
Mutex file:${APACHE_LOCK_DIR} default
to resolve the issue.
- The "SSLSessionCache ... session cache not supported" error message when starting Apache may indicate that the
socache_shmcb.load
file is missing. Run the following command
cp /etc/apache2/mods-available/socache_shmcb.load /etc/apache2/mods-enabled/
to resolve the issue. You should also edit the /etc/apache2/mods-enabled/ssl.conf file and replace the line
SSLMutex file:${APACHE_RUN_DIR}/ssl_mutex
with the line
Mutex file:${APACHE_LOCK_DIR} ssl-cache
to avoid a different issue.
- The "Invalid command 'Order'" error message when starting Apache indicates that Apache was updated, but one or more of its configuration files found in
/etc/apache2/conf.d
and/etc/apache2/plesk.conf.d
still contain the deprecatedOrder
directive. Replace the lines
Order allow,deny
Allow from all
with
Require all granted
to resolve the issue.
- The "Config file dir.conf not properly enabled" error message may indicate that the file
/etc/apache2/mods-enabled/dir.conf
is a real file instead of a symlink. Remove the file and create a symlink pointing to/etc/apache2/mods-available/dir.conf
to resolve the issue. - The "Failed to get D-Bus connection" error message may indicate an incomplete switch from
init
tosystemd
. Restart the server to resolve the issue.