自 Plesk 12.5 起,可以在 Plesk 服务器上升级操作系统。在 Plesk 中支持以下 dist-upgrade 升级路径:

  • Debian 6 到 Debian 7
  • Debian 7 到 Debian 8
  • Ubuntu 12.04 到 Ubuntu 14.04
  • Ubuntu 14.04 到 Ubuntu 16.04 (仅 Plesk Onyx 支持)

注解: 注意: 当前,Ubuntu不支持将 Ubuntu 16.04 升级到 Ubuntu 18.04 同时Plesk也不支持。

Dist-upgrade 不是一个简单的过程。要实现必须要有丰富的系统管理经验以及对系统和其组件充分的了解。

如果您之前从未执行过 dist-upgrade,建议您首先执行下面的步骤:

  1. 在测试服务器或虚拟机内安装升级前的操作系统版本。按照操作系统供应商提供的文档说明升级该系统:

  2. 请解决所有潜在的问题,确保在升级后 Plesk 仍能正常运行。只有这样然后再于生产性服务器上运行升级。

Ubuntu 14 到 Ubuntu 16 (Plesk 12.5 不支持 Ubuntu 16)

在从 Ubuntu 14 升级到 Ubuntu 16 的过程中,操作系统供应商附带提供的系统 PHP 5.x 将会被升级到 PHP 7.x。若要避免任何 PHP 兼容性问题,建议在升级前,将所有使用操作系统供应商提供的 PHP 5x 处理程序的网站切换为相应的 PHP 处理程序。请参阅这些KB文章了解详情: KB #213382129KB #213933525

注解: 注意:大部分的 APS 应用程序与 PHP 7.x 不兼容

执行从 Ubuntu 14 到 Ubuntu 16 的 dist-upgrade

若要执行从 Ubuntu 14 到 Ubuntu 16 的 dist-upgrade,请如下操作:

  1. 运行下面的脚本然后根据向导操作:

    # /opt/psa/bin/distupgrade.helper.ubt14-ubt16.x64.sh
    

    该脚本会在 /var/log/plesk/install/plesk-distupgrade.log 中记录其所有的操作。

  2. 在执行脚本的过程中将会要求您重启服务器。重启服务器。

  3. 服务器重启后,请再次运行该脚本。

执行从 Debian 6、7 和 Ubuntu 12 的 dist-upgrade

为升级进行服务器准备:

  1. 全量备份服务器。 在您开始升级前,请全量备份服务器。同时通知您的客户接下来将要宕机一到三小时。

  2. 考虑移除可能是上次 dist-upgrade 遗留下来的源列表备份文件:

    /etc/apt/sources.list.saved_by_plesk_distupgrade
    /etc/apt/sources.list.d/50sw_autoinstaller.list.saved_by_plesk_distupgrade
    
  3. 运行升级前助手脚本(本案例中是从 Debian 7 到 Debian 8 的 dist-upgrade )并为升级进行 Plesk 和系统准备:

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

    该脚本会在 /var/log/plesk/install/plesk-distupgrade.log 中记录其所有的操作。

  4. 禁止在操作系统升级过程中切换到 systemd 。使用下面的内容创建文件 /etc/apt/preferences.d/local-pin-init

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

执行 dist-upgrade

  1. 更新有关系统包的信息:

    # apt-get update
    
  2. 升级系统:

    • Debian:

      # apt-get dist-upgrade
      
    • Ubuntu:

      # do-release-upgrade
      

    该命令将会执行完整的系统升级,安装所有包的最新可用版本,解决不同发行版中各个包之间所有可能的依赖更改。

    在升级的过程中系统可能会生成如下的提示:

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] ?

选择使用新的配置文件替换原有的配置文件 (回答 Y )。

完成升级

  1. 运行升级后助手脚本:

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

    该脚本会在 /var/log/plesk/install/plesk-distupgrade.log 中记录其所有的操作。

  2. 移除文件 /etc/apt/preferences.d/local-pin-init 并安装 systemd-sysv 包:

    # rm -f /etc/apt/preferences.d/local-pin-init
    # apt-get install systemd-sysv
    
  3. 重启服务器。

  4. 检查 Plesk 和其所有的服务是否正常运行。