• We value your experience with Plesk during 2024
    Plesk strives to perform even better in 2025. To help us improve further, please answer a few questions about your experience with Plesk Obsidian 2024.
    Please take this short survey:

    https://pt-research.typeform.com/to/AmZvSXkx
  • The Horde webmail has been deprecated. Its complete removal is scheduled for April 2025. For details and recommended actions, see the Feature and Deprecation Plan.
  • We’re working on enhancing the Monitoring feature in Plesk, and we could really use your expertise! If you’re open to sharing your experiences with server and website monitoring or providing feedback, we’d love to have a one-hour online meeting with you.

Input Instructions on upgrading an existing Debian Stretch with Plesk to Debian Buster

LarsenD

Regular Pleskian
I did a lot of testing to get the update right from Debian Stretch to Debian Buster running Plesk 18.0.28.2. Unfortunately, Plesk currently doesn't officially support this like it used to do in previous versions. It's possible if you adhere to some specific steps.


Caveats:
Contrary to previous releases, there is no "distupgrade.helper" script anymore.

If you would run dist-upgrade instantly after upgrade, this would lead to a problem with "Removing psa-imp...". Uninstallation will hang and in your mail log you will find this:
Code:
postfix/postdrop[2812]: warning: mail_queue_enter: create file maildrop/718876.2812: No such file or directory
Workaround in that case:
Code:
killall apt-get; killall dpkg; dpkg --configure -a; apt-get --fix-broken install
At least this was a problem in my VM, although it might be caused by Postfix not being configured.


Steps to follow:
1)
Prevent a problem with postfix service not starting:
Code:
postfix.service: Service has Restart= setting other than no, which isn't allowed for Type=oneshot services. Refusing.
Code:
rm -f /lib/systemd/system/postfix.service.d/respawn.conf


2) Update your "/etc/apt/sources.list" to use buster instead of stretch.
Don't update the Plesk files in "/etc/apt/sources.list.d", yet! If you do, dist-upgrade would remove Plesk including its database.
Code:
sed -i 's:stretch:buster:' /etc/apt/sources.list


3) Upgrade:
Code:
apt-get update && apt-get upgrade


4) Update Plesk:
Code:
/opt/psa/admin/bin/autoinstaller --select-release-current --upgrade-installed-components


5) plesk.list is adapted by autoinstaller. Need to adapt a second file.
Code:
cd /etc/apt/sources.list.d && test -f plesk-ext-panel-migrator.list && \
sed -i "s:stretch:buster:g" plesk-ext-panel-migrator.list && \
apt-get update


6) Run Dist-Upgrade:
Code:
apt-get dist-upgrade


7) MySQL needs special treatment as it won't be updated automatically:
Code:
apt-get install default-mysql-server


8) Remove old packages:
Code:
export PACKAGES="cpp-6 gcc-6 gcc-6-base iproute libasan3 libdns-export162 libdns162 libgcc-6-dev libirs141 libisc-export160 libisc160 libisccc140 libisccfg140 libmagickcore-6.q16-3 libmagickwand-6.q16-3 libprocps6 libssl1.0.2 linux-image-4.9.0-12-amd64 perl-modules-5.24 plesk-distupgrade host"
apt-get purge $(for i in ${PACKAGES}; do dpkg -l "$i" 2>/dev/null | grep -q "^ii" && echo "$i"; done)

Some old Plesk packages left:
Code:
clear; dpkg -l | egrep "stretch|debian9|+deb9|16.04|debian\.9" | egrep -v "rc |php7|php-common"

Workaround: Manually download and install the debian10-version of those files. The file names are current as of today. Check the repository in your browser if you find that some files cannot be downloaded.

The repository URL is here:
Code:
cat /etc/apt/sources.list.d/plesk.list | grep pool

Code:
export MAIN="http://autoinstall.plesk.com/pool/PSA_18.0.28_3548/"
export DEBPATH="dist-deb-Debian-10.0-x86_64/contrib/"
export PARTS="php-ioncube-loader_10.3.9-v.debian.10+p18.0.28.0+t200522.1515_amd64.deb plesk-libboost-1.65_1.65.1-debian.10.200518.2114_amd64.deb plesk-libboost-chrono1.65_1.65.1-debian.10.200518.2114_amd64.deb plesk-libboost-date-time1.65_1.65.1-debian.10.200518.2114_amd64.deb plesk-libboost-filesystem1.65_1.65.1-debian.10.200518.2114_amd64.deb plesk-libboost-iostreams1.65_1.65.1-debian.10.200518.2114_amd64.deb plesk-libboost-locale1.65_1.65.1-debian.10.200518.2114_amd64.deb plesk-libboost-program-options1.65_1.65.1-debian.10.200518.2114_amd64.deb plesk-libboost-regex1.65_1.65.1-debian.10.200518.2114_amd64.deb plesk-libboost-serialization1.65_1.65.1-debian.10.200518.2114_amd64.deb plesk-libboost-system1.65_1.65.1-debian.10.200518.2114_amd64.deb plesk-libboost-thread1.65_1.65.1-debian.10.200518.2114_amd64.deb plesk-libpoco-1.9.0_1.9.0-debian.10.200519.1248_amd64.deb plesk-libstdc++6.3.0_6.3.0-debian.10.190730.1530_amd64.deb plesk-milter_8.14.5-debian.10.200514.1326_amd64.deb plesk-mysql-server_18.0-v.debian.10+p18.0.28.0+t200519.1248_all.deb psa-pear_1.10.9-20191112.debian.10.200519.1248_all.deb sw-tar_1.32-v.debian.10+p18.0.28.0+t200519.1248_amd64.deb"

for PART in ${PARTS}; do wget -q --show-progress "${MAIN}${DEBPATH}${PART}"; done

dpkg -i * && apt-get autoremove


9) Fix for bind9 that won't start, printing out lots of AppArmor messages (see Unable to start bind on Plesk Ubuntu/Debian server: loading configuration from '/etc/named.conf' loading configuration: permission denied)
Code:
cat <<EOF >> /etc/apparmor.d/local/usr.sbin.named
/var/named/run-root/** rwm,
EOF
systemctl reload apparmor


edit 2020-10-09:
10)
Noticed that "plesk bin php_settings -u" showed errors "No such file or directory: '/run/plesk/php7.3-fpm.sock'"
To fix this, make sure that every file for a specific PHP version in "/etc/php/*/fpm/pool.d/plesk-service.localdomain.conf" is also using that version inside the file, e.g.
Code:
sed -i 's:7.0:7.3:g' /etc/php/7.3/fpm/pool.d/plesk-service.localdomain.conf && \
plesk bin php_settings -u
 
Last edited:
  • Like
Reactions: mow
Thanks for making this tutorial.

I just went through 1-9, unfortunately, I ended up all of my websites and Plesk control panel not resolving (Nginx error not found)

Needs a tweak. Anyone from Plesk official can comment here?
 
Thanks for making this tutorial.

I just went through 1-9, unfortunately, I ended up all of my websites and Plesk control panel not resolving (Nginx error not found)

Needs a tweak. Anyone from Plesk official can comment here?

Were you able to fix this issue?
 
@LarsenD Could you please clearify if this is for Obsidian or Onyx? Because I'm also running Obsidian and Onyx isn't compatible with Debian 10. But this thread is in the Onxy Forum. Maybe it needs to be moved by an admin??
 
@mow Good catch. I was in the original thread about compatibility between Plesk and Debian Buster and when the new version came out, I didn't notice that thread was in the Onyx section.
So yes, this thread should be moved to Obsidian (@IgorG ?).
 
  • Like
Reactions: mow
I just tried this. Didn't work at all... :( Had to rebuild my server from a snapshot there where about 50 errors while running:

Bash:
/opt/psa/admin/bin/autoinstaller --select-release-current --upgrade-installed-components

I need the mention I'm only using an E-Mail Relay so there wasn't even postifx installed...

Since I can't afford a long downtime I could not debug. Sadly I think I need to migrate. But this time it will be CPanel...
 
Back
Top