web-dev-qa-db-fra.com

Comment réparer AppArmor «Impossible d'ouvrir» l'erreur lors de l'installation de php + mysql?

Je veux installer php5-imap php5-ldap php5-curl

Sudo apt-get install php5-imap php5-ldap php5-curl

Je reçois cette erreur:

AppArmor parser error for /etc/apparmor.d/usr.sbin.mysqld in /etc/apparmor.d/usr.sbin.mysqld at line 9: Could not open 'abstractions/mysql'

Comment ce problème peut-il être résolu?

4
Ellouze Anis

Il vous manque le fichier abstractions/mysql. Cela m'est arrivé lorsque j'ai essayé de supprimer complètement MySQL avant de le réinstaller. J'ai résolu ce problème en remplaçant le fichier par une copie d'un autre serveur. Le contenu de mon fichier ressemble à ceci:

# ------------------------------------------------------------------
#
#    Copyright (C) 2002-2006 Novell/SUSE
#    Copyright (C) 2013 Christian Boltz
#
#    This program is free software; you can redistribute it and/or
#    modify it under the terms of version 2 of the GNU General Public
#    License published by the Free Software Foundation.
#
# ------------------------------------------------------------------

   /var/lib/mysql{,d}/mysql{,d}.sock rw,
   /{var/,}run/mysql{,d}/mysql{,d}.sock rw,
   /usr/share/{mysql,mysql-community-server,mariadb}/charsets/ r,
   /usr/share/{mysql,mysql-community-server,mariadb}/charsets/*.xml r,

Essayez de créer le fichier et d’ajouter le contenu ci-dessus avec:

Sudo nano /etc/apparmor.d/abstractions/mysql
2
user2395126

Voir si le wiki Ubuntu aide: https://wiki.ubuntu.com/DebuggingApparmor

Plus précisément,

Lors du débogage, il peut également être utile de mettre apparmor en mode "plainte". Cela permettra à votre application de fonctionner normalement pendant que apparmor signale les accès qui ne figurent pas dans le profil. Pour activer le mode "réclamation", utilisez:

Sudo aa-complain /path/to/bin

où '/ chemin/vers/bin' est le chemin absolu vers le binaire, comme indiqué dans la partie 'profil = ...' de l'entrée 'audit'. Par exemple:

Sudo aa-complain /usr/sbin/slapd

Pour réactiver le mode d'application, utilisez plutôt "aa-enforce":

Sudo aa-enforce /path/to/bin

Pour désactiver un profil:

Sudo touch /etc/apparmor.d/disable/path.to.bin
Sudo apparmor_parser -R /etc/apparmor.d/path.to.bin

Pour désactiver un profil dans Ubuntu 10.10 et versions antérieures:

Sudo touch /etc/apparmor.d/disable/path.to.bin Sudo apparmor_parser -R /etc/apparmor.d/path.to.bin

en 11.04 et plus tard:

Sudo aa-disable /etc/apparmor.d/path.to.bin

Pour désactiver tout AppArmor à des fins de test, démarrez avec apparmor=0 sur la ligne de commande du noyau.

1
belacqua

C'est une vieille question, mais peut-être que quelqu'un le trouvera utile.

Parfois, les applications sont divisées en packages distincts. Il en va de même pour les profils apparmor. Ils sont divisés en paquets apparmor-profiles et apparmor-profiles-extra. Donc, si vous avez des profils manquants, installez apparmor-profiles-extra.

0
Sergey