It is possible to upgrade the operating system on a Plesk server. The following dist-upgrade paths are supported:

  • Debian 6 to Debian 7
  • Debian 7 to Debian 8

Dist-upgrade is not a simple process. To go through it you must have considerable experience in the system administration, the knowledge of the system and its components.

If you have never performed dist-upgrade before, it is recommended to do the following first:

  1. 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:

  2. Solve all potential problems and make sure that Plesk is working after the upgrade. Only after that run the upgrade on the production server.

Performing the dist-upgrade from Debian 6 and 7

Preparing server for upgrade:

  1. Create a full server backup. Before you begin the upgrade, make a full server backup. Also notify your customers about upcoming downtime of one to three hours.

  2. Consider to remove sources list backup files which might be left from previous dist-upgrade:

    /etc/apt/sources.list.saved_by_plesk_distupgrade
    /etc/apt/sources.list.d/50sw_autoinstaller.list.saved_by_plesk_distupgrade
    
  3. Run pre-upgrade helper script (in this case dist-upgrade from Debian 7 to Debian 8) and prepare Plesk and the system for the upgrade:

    /opt/psa/bin/distupgrade.helper.deb7-deb8_pre.x64.sh
    

    The script logs all its actions in /var/log/plesk/install/plesk-distupgrade.log.

  4. Disable switching to systemd during the OS upgrade. Create the file /etc/apt/preferences.d/local-pin-init with the following content:

cat /etc/apt/preferences.d/local-pin-init
Package: systemd-sysv
Pin: release o=Debian
Pin-Priority: -1

Performing the dist-upgrade

  1. Update information about system packages:

    apt-get update
    
  2. Upgrade the system:

    apt-get dist-upgrade
    

    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:

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 (answer Y ).

Finalizing the upgrade

  1. Run the post-upgrade helper script:

    /opt/psa/bin/distupgrade.helper.deb7-deb8_post.x64.sh
    

    The script logs all its actions in /var/log/plesk/install/plesk-distupgrade.log.

  2. Remove the file /etc/apt/preferences.d/local-pin-init and install systemd-sysv package:

    rm -f /etc/apt/preferences.d/local-pin-init
    apt-get install systemd-sysv
    
  3. Reboot your server.

  4. Check if Plesk and all its services are working.