Applicable to:
- Plesk Onyx for Linux
Symptoms
- Unable to install Plesk updates on Ubuntu 14.04 or Ubuntu 16.04. The following error is displayed in the Plesk interface:
PLESK_ERROR: E: dpkg was interrupted, you must manually run 'dpkg --configure -a' to correct the problem.
-
The following explanation can be found in
/var/log/plesk/systemupdatestool.log
# cat /var/log/plesk/systemupdatestool.log | tail -n3
2017-04-02 06:22:15 INFO: pum is called with arguments: ['--list', '--repo-info', '--json']
2017-04-02 06:22:15 ERROR: Previous Plesk installer call finished unsuccessfully. PUM will not perform any update operations until Plesk installation is fixed.
2017-04-02 06:22:15 ERROR: Exited with returncode 50. -
dpkg --configure -a
command hangs at restarting AppArmor and after that server reboot is required:CONFIG_TEXT: Setting up apparmor (2.10.95-0ubuntu2.6) ...
update-rc.d: warning: start and stop actions are no longer supported; falling back to defaults
Cause
Bug in the Ubuntu Kernel which was resolved in the kernel version 4.4.0-38.57
#1579135: AppArmor profile reloading causes an intermittent kernel BUG
Resolution
Warning: We strongly recommend to backup the whole server before applying the steps below. If your Plesk is running inside a virtual container, contact your service provider to create a backup and in order to verify if the kernel version is supported.
- Make sure that error is the same as in symptoms.
- Log in to the server via SSH.
- Temporarily remove AppArmor post-install scripts in order to prevent AppArmor from reloading:
# mv /var/lib/dpkg/info/apparmor.postinst ~/
# mv /var/lib/dpkg/info/apparmor-profiles.postinst ~/ - Disable AppArmor:
# service apparmor stop
# service apparmor teardown
# update-rc.d -f apparmor remove - Run
dpkg --configure -a
to fix the initial error:# dpkg --configure -a
- Upgrade Ubuntu kernel to version 4.4.0-38.57 or newer and reboot the server. For example, for version 4.4.0-72:
# apt update
# apt install linux-image-4.4.0-72-generic
# sudo reboot - Move back AppArmor post-install scripts and reconfigure apparmor-profiles package:
# mv ~/apparmor.postinst /var/lib/dpkg/info/
# mv ~/apparmor-profiles.postinst /var/lib/dpkg/info/
# dpkg-reconfigure apparmor
# dpkg-reconfigure apparmor-profiles - Start AppArmor:
# service apparmor start
Comments
2 comments
Plesk services must be stopped before proceeding with Step 4. Else teardown will get stuck and the following message will be recorded in syslog:
====
All profile caches have been cleared, but no profiles have been unloaded
====
Hello @Edwin C,
Thank you for sharing your user experience.
For cases we had this wasn't necessary, however, this may help other users.
Please sign in to leave a comment.