Pages : 1
#1 Le 28/08/2017, à 11:38
- Snaeffel
[RESOLU] Problème apparmor et mysql
Bonjour,
J'ai un serveur local qui fonctionnait bien, mais ce matin, patatra, impossible d'accéder à quoi que ce soit, Apache non démarré. J'ai désinstallé et ré-installé Apache, et c'est reparti, mais mysql ne veut pas démarrer, et là je suis coincé.
sudo service mysql start
Job for mysql.service failed because the control process exited with error code. See "systemctl status mysql.service" and "journalctl -xe" for details.
Si je fais la première commande j'ai :
● mysql.service - MySQL Community Server
Loaded: loaded (/lib/systemd/system/mysql.service; enabled; vendor preset: enabled)
Active: activating (start-post) (Result: exit-code) since lun. 2017-08-28 12:34:58 CEST; 4s ago
Process: 6863 ExecStart=/usr/sbin/mysqld (code=exited, status=1/FAILURE)
Process: 6855 ExecStartPre=/usr/share/mysql/mysql-systemd-start pre (code=exited, status=0/SUCCESS)
Main PID: 6863 (code=exited, status=1/FAILURE); : 6864 (mysql-systemd-s)
CGroup: /system.slice/mysql.service
└─control
├─6864 /bin/bash /usr/share/mysql/mysql-systemd-start post
└─6879 sleep 1
août 28 12:34:58 serveur systemd[1]: Starting MySQL Community Server...
août 28 12:34:58 serveur systemd[1]: mysql.service: Main process exited, code=exited, status=1/FAILURE
Et la deuxième :
août 28 12:35:58 serveur systemd[1]: Failed to start MySQL Community Server.
-- Subject: L'unité (unit) mysql.service a échoué
-- Defined-By: systemd
-- Support: http://lists.freedesktop.org/mailman/listinfo/systemd-devel
--
-- L'unité (unit) mysql.service a échoué, avec le résultat failed.
août 28 12:35:58 serveur systemd[1]: mysql.service: Unit entered failed state.
août 28 12:35:58 serveur systemd[1]: mysql.service: Failed with result 'exit-code'.
août 28 12:35:58 serveur systemd[1]: mysql.service: Service hold-off time over, scheduling restart.
août 28 12:35:58 serveur systemd[1]: Stopped MySQL Community Server.
-- Subject: L'unité (unit) mysql.service a terminé son arrêt
-- Defined-By: systemd
-- Support: http://lists.freedesktop.org/mailman/listinfo/systemd-devel
--
-- L'unité (unit) mysql.service a terminé son arrêt.
août 28 12:35:58 serveur systemd[1]: Starting MySQL Community Server...
-- Subject: L'unité (unit) mysql.service a commencé à démarrer
-- Defined-By: systemd
-- Support: http://lists.freedesktop.org/mailman/listinfo/systemd-devel
--
-- L'unité (unit) mysql.service a commencé à démarrer.
août 28 12:35:58 serveur audit[7043]: AVC apparmor="DENIED" operation="open" profile="/usr/sbin/mysqld" name="/proc/7043/status" pid=7043 comm="mysqld" requested_mask="r" denied_mask="r" fsuid=121 ouid=121
août 28 12:35:58 serveur audit[7043]: AVC apparmor="DENIED" operation="open" profile="/usr/sbin/mysqld" name="/sys/devices/system/node/" pid=7043 comm="mysqld" requested_mask="r" denied_mask="r" fsuid=121 ouid=0
août 28 12:35:58 serveur audit[7043]: AVC apparmor="DENIED" operation="open" profile="/usr/sbin/mysqld" name="/proc/7043/status" pid=7043 comm="mysqld" requested_mask="r" denied_mask="r" fsuid=121 ouid=121
août 28 12:35:58 serveur kernel: audit: type=1400 audit(1503916558.643:127): apparmor="DENIED" operation="open" profile="/usr/sbin/mysqld" name="/proc/7043/status" pid=7043 comm="mysqld" requested_mask="r" denied_mask="r" fsuid
août 28 12:35:58 serveur kernel: audit: type=1400 audit(1503916558.643:128): apparmor="DENIED" operation="open" profile="/usr/sbin/mysqld" name="/sys/devices/system/node/" pid=7043 comm="mysqld" requested_mask="r" denied_mask="
août 28 12:35:58 serveur kernel: audit: type=1400 audit(1503916558.643:129): apparmor="DENIED" operation="open" profile="/usr/sbin/mysqld" name="/proc/7043/status" pid=7043 comm="mysqld" requested_mask="r" denied_mask="r" fsuid
août 28 12:35:58 serveur systemd[1]: mysql.service: Main process exited, code=exited, status=1/FAILURE
août 28 12:36:28 serveur systemd[1]: Failed to start MySQL Community Server.
-- Subject: L'unité (unit) mysql.service a échoué
-- Defined-By: systemd
-- Support: http://lists.freedesktop.org/mailman/listinfo/systemd-devel
--
-- L'unité (unit) mysql.service a échoué, avec le résultat failed.
août 28 12:36:28 serveur systemd[1]: mysql.service: Unit entered failed state.
août 28 12:36:28 serveur systemd[1]: mysql.service: Failed with result 'exit-code'.
août 28 12:36:28 serveur systemd[1]: mysql.service: Service hold-off time over, scheduling restart.
août 28 12:36:28 serveur systemd[1]: Stopped MySQL Community Server.
-- Subject: L'unité (unit) mysql.service a terminé son arrêt
-- Defined-By: systemd
-- Support: http://lists.freedesktop.org/mailman/listinfo/systemd-devel
--
-- L'unité (unit) mysql.service a terminé son arrêt.
août 28 12:36:28 serveur systemd[1]: Starting MySQL Community Server...
-- Subject: L'unité (unit) mysql.service a commencé à démarrer
-- Defined-By: systemd
-- Support: http://lists.freedesktop.org/mailman/listinfo/systemd-devel
--
-- L'unité (unit) mysql.service a commencé à démarrer.
août 28 12:36:28 serveur audit[7130]: AVC apparmor="DENIED" operation="open" profile="/usr/sbin/mysqld" name="/proc/7130/status" pid=7130 comm="mysqld" requested_mask="r" denied_mask="r" fsuid=121 ouid=121
août 28 12:36:28 serveur audit[7130]: AVC apparmor="DENIED" operation="open" profile="/usr/sbin/mysqld" name="/sys/devices/system/node/" pid=7130 comm="mysqld" requested_mask="r" denied_mask="r" fsuid=121 ouid=0
août 28 12:36:28 serveur audit[7130]: AVC apparmor="DENIED" operation="open" profile="/usr/sbin/mysqld" name="/proc/7130/status" pid=7130 comm="mysqld" requested_mask="r" denied_mask="r" fsuid=121 ouid=121
août 28 12:36:28 serveur kernel: audit: type=1400 audit(1503916588.887:130): apparmor="DENIED" operation="open" profile="/usr/sbin/mysqld" name="/proc/7130/status" pid=7130 comm="mysqld" requested_mask="r" denied_mask="r" fsuid
août 28 12:36:28 serveur kernel: audit: type=1400 audit(1503916588.887:131): apparmor="DENIED" operation="open" profile="/usr/sbin/mysqld" name="/sys/devices/system/node/" pid=7130 comm="mysqld" requested_mask="r" denied_mask="
août 28 12:36:28 serveur kernel: audit: type=1400 audit(1503916588.887:132): apparmor="DENIED" operation="open" profile="/usr/sbin/mysqld" name="/proc/7130/status" pid=7130 comm="mysqld" requested_mask="r" denied_mask="r" fsuid
août 28 12:36:29 serveur systemd[1]: mysql.service: Main process exited, code=exited, status=1/FAILURE
Je sais pas ce qui s'est passé, je n'ai rien fait de spécial (il me semble).
Merci d'avance pour votre aide.
Dernière modification par Snaeffel (Le 29/08/2017, à 20:12)
Hors ligne
#2 Le 28/08/2017, à 12:38
- bruno
Re : [RESOLU] Problème apparmor et mysql
Bonjour,
Il semble qu'il y ait un problème avec le profil apparmor de mysql. Peux-tu nous indiquer le contenu du fichier /etc/apparmor.d/usr.sbin.mysqld
#3 Le 28/08/2017, à 13:26
- Snaeffel
Re : [RESOLU] Problème apparmor et mysql
Bonjour, et merci de me répondre.
voilà le contenu du fichier :
# vim:syntax=apparmor
# Last Modified: Tue Feb 09 15:28:30 2016
#include <tunables/global>
/usr/sbin/mysqld {
#include <abstractions/base>
#include <abstractions/nameservice>
#include <abstractions/user-tmp>
#include <abstractions/mysql>
#include <abstractions/winbind>
# Allow system resource access
/sys/devices/system/cpu/ r,
capability sys_resource,
capability dac_override,
capability setuid,
capability setgid,
# Allow network access
network tcp,
/etc/hosts.allow r,
/etc/hosts.deny r,
# Allow config access
/etc/mysql/** r,
# Allow pid, socket, socket lock file access
/var/run/mysqld/mysqld.pid rw,
/var/run/mysqld/mysqld.sock rw,
/var/run/mysqld/mysqld.sock.lock rw,
/run/mysqld/mysqld.pid rw,
/run/mysqld/mysqld.sock rw,
/run/mysqld/mysqld.sock.lock rw,
# Allow execution of server binary
/usr/sbin/mysqld mr,
/usr/sbin/mysqld-debug mr,
# Allow plugin access
/usr/lib/mysql/plugin/ r,
/usr/lib/mysql/plugin/*.so* mr,
# Allow error msg and charset access
/usr/share/mysql/ r,
/usr/share/mysql/** r,
# Allow data dir access
/var/lib/mysql/ r,
/var/lib/mysql/** rwk,
# Allow data files dir access
/var/lib/mysql-files/ r,
/var/lib/mysql-files/** rwk,
# Allow keyring dir access
/var/lib/mysql-keyring/ r,
/var/lib/mysql-keyring/** rwk,
# Allow log file access
/var/log/mysql.err rw,
/var/log/mysql.log rw,
/var/log/mysql/ r,
/var/log/mysql/** rw,
# Site-specific additions and overrides. See local/README for details.
#include <local/usr.sbin.mysqld>
}
Je suis allé jeter un oeil par curiosité :
- /var/run/mysqld est vide
- /run/mysqld est vide
- Pas de dossier mysqld dans /usr/sbin
- Pas de dossier mysql dans /var/log
Ça sent pas très bon, si ?
Hors ligne
#4 Le 28/08/2017, à 14:41
- bruno
Re : [RESOLU] Problème apparmor et mysql
Le fichier apparmor parait normal. Par contre vu ce que tu décris j'ai un doute sur installation de mysql-server, donc rchargement de la liste des paquet, mise à jour complète, puis installation :
sudo apt-get update
sudo apt-get dist-upgrade
sudo apt-get install mysql-server
#5 Le 28/08/2017, à 14:49
- Snaeffel
Re : [RESOLU] Problème apparmor et mysql
Rechargement de la liste des paquets et mise à jour OK.
Et à l'installation :
sudo apt-get install mysql-server
Lecture des listes de paquets... Fait
Construction de l'arbre des dépendances
Lecture des informations d'état... Fait
mysql-server is already the newest version (5.7.19-0ubuntu0.16.04.1).
Les paquets suivants ont été installés automatiquement et ne sont plus nécessaires :
libmircommon5 linux-headers-4.4.0-91 linux-headers-4.4.0-91-generic linux-image-4.4.0-91-generic linux-image-extra-4.4.0-91-generic
Veuillez utiliser « sudo apt autoremove » pour les supprimer.
0 mis à jour, 0 nouvellement installés, 0 à enlever et 0 non mis à jour.
Hors ligne
#6 Le 28/08/2017, à 17:18
- bruno
Re : [RESOLU] Problème apparmor et mysql
- Pas de dossier mysqld dans /usr/sbin
- Pas de dossier mysql dans /var/log
Donnes-nous le retour de :
ls -l /usr/sbin/mysqld
C'est l'exécutable du serveur MySQL. Si le fichier n'est pas présent c'est que mysql-server n'est pas correctement installé…
Essaie :
sudo apt install mysql-server-5.7
#7 Le 28/08/2017, à 17:30
- Snaeffel
Re : [RESOLU] Problème apparmor et mysql
ls -l /usr/sbin/mysqld
-rwxr-xr-x 1 root root 24791432 juil. 19 21:31 /usr/sbin/mysqld
Il est bien présent (je cherchais un dossier, du coup je l'avais pas vu...)
Et
sudo apt install mysql-server-5.7
[sudo] Mot de passe de matthieu :
Lecture des listes de paquets... Fait
Construction de l'arbre des dépendances
Lecture des informations d'état... Fait
mysql-server-5.7 is already the newest version (5.7.19-0ubuntu0.16.04.1).
Les paquets suivants ont été installés automatiquement et ne sont plus nécessaires :
libmircommon5 linux-headers-4.4.0-91 linux-headers-4.4.0-91-generic
linux-image-4.4.0-91-generic linux-image-extra-4.4.0-91-generic
Veuillez utiliser « sudo apt autoremove » pour les supprimer.
0 mis à jour, 0 nouvellement installés, 0 à enlever et 0 non mis à jour.
Hors ligne
#8 Le 28/08/2017, à 18:41
- bruno
Re : [RESOLU] Problème apparmor et mysql
hum…
C'est bien un problème avec apparmor mais je ne vois pas ce qui coince… Peut-être ce bug
À tout hasard essaie de relancer apparmor, puis mysql :
sudo service apparmor restart
sudo service mysql restart
#9 Le 28/08/2017, à 18:53
- Snaeffel
Re : [RESOLU] Problème apparmor et mysql
Non, c'est pareil.
Je suis allé voir la doc de apparmor, et désactivé comme suit :
sudo service apparmor stop
sudo update-rc.d -f apparmor remove
Et j'ai exactement le même problème, c'est la misère...
Hors ligne
#10 Le 28/08/2017, à 19:44
- bruno
Re : [RESOLU] Problème apparmor et mysql
Tu as le même message d'erreur (retour de journalctl -xe) après avoir désactivé apparmor ?!
Cette erreur :
août 28 12:35:58 serveur audit[7043]: AVC apparmor="DENIED" operation="open" profile="/usr/sbin/mysqld" name="/proc/7043/status" pid=7043 comm="mysqld" requested_mask="r" denied_mask="r" fsuid=121 ouid=121
correspond bien au bug que j'ai cité plus haut…
#11 Le 28/08/2017, à 20:39
- Snaeffel
Re : [RESOLU] Problème apparmor et mysql
Après avoir désactivé apparmor, si je fais :
sudo mysql start
J'ai
ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2)
Je n'ai rien dans le dossier /var/run/mysqld, c'est vide !
Ensuite, avec journalctl -xe (désolé pour le pavé) :
journalctl -xe
-- Defined-By: systemd
-- Support: http://lists.freedesktop.org/mailman/listinfo/systemd-devel
--
-- L'unité (unit) mysql.service a terminé son arrêt.
août 28 21:37:18 serveur systemd[1]: Starting MySQL Community Server...
-- Subject: L'unité (unit) mysql.service a commencé à démarrer
-- Defined-By: systemd
-- Support: http://lists.freedesktop.org/mailman/listinfo/systemd-devel
--
-- L'unité (unit) mysql.service a commencé à démarrer.
août 28 21:37:18 serveur audit[23062]: AVC apparmor="DENIED" operation="open" profile="/usr/sbin/mysqld" name="/proc/23062/status" pid=23062 comm="mysqld" requested_mask="r" denied_mask="r" fsuid=121 ouid=121
août 28 21:37:18 serveur audit[23062]: AVC apparmor="DENIED" operation="open" profile="/usr/sbin/mysqld" name="/sys/devices/system/node/" pid=23062 comm="mysqld" requested_mask="r" denied_mask="r" fsuid=121 ouid=0
août 28 21:37:18 serveur audit[23062]: AVC apparmor="DENIED" operation="open" profile="/usr/sbin/mysqld" name="/proc/23062/status" pid=23062 comm="mysqld" requested_mask="r" denied_mask="r" fsuid=121 ouid=121
août 28 21:37:18 serveur kernel: audit: type=1400 audit(1503949038.313:757): apparmor="DENIED" operation="open" profile="/usr/sbin/mysqld" name="/proc/23062/status" pid=23062 comm="mysqld" requested_mask="r" denied_mask="r" fsuid=121 ouid=121
août 28 21:37:18 serveur kernel: audit: type=1400 audit(1503949038.313:758): apparmor="DENIED" operation="open" profile="/usr/sbin/mysqld" name="/sys/devices/system/node/" pid=23062 comm="mysqld" requested_mask="r" denied_mask="r" fsuid=121 ouid=0
août 28 21:37:18 serveur kernel: audit: type=1400 audit(1503949038.313:759): apparmor="DENIED" operation="open" profile="/usr/sbin/mysqld" name="/proc/23062/status" pid=23062 comm="mysqld" requested_mask="r" denied_mask="r" fsuid=121 ouid=121
août 28 21:37:18 serveur systemd[1]: mysql.service: Main process exited, code=exited, status=1/FAILURE
août 28 21:37:48 serveur systemd[1]: Failed to start MySQL Community Server.
-- Subject: L'unité (unit) mysql.service a échoué
-- Defined-By: systemd
-- Support: http://lists.freedesktop.org/mailman/listinfo/systemd-devel
--
-- L'unité (unit) mysql.service a échoué, avec le résultat failed.
août 28 21:37:48 serveur systemd[1]: mysql.service: Unit entered failed state.
août 28 21:37:48 serveur systemd[1]: mysql.service: Failed with result 'exit-code'.
août 28 21:37:48 serveur systemd[1]: mysql.service: Service hold-off time over, scheduling restart.
août 28 21:37:48 serveur systemd[1]: Stopped MySQL Community Server.
-- Subject: L'unité (unit) mysql.service a terminé son arrêt
-- Defined-By: systemd
-- Support: http://lists.freedesktop.org/mailman/listinfo/systemd-devel
--
-- L'unité (unit) mysql.service a terminé son arrêt.
août 28 21:37:48 serveur systemd[1]: Starting MySQL Community Server...
-- Subject: L'unité (unit) mysql.service a commencé à démarrer
-- Defined-By: systemd
-- Support: http://lists.freedesktop.org/mailman/listinfo/systemd-devel
--
-- L'unité (unit) mysql.service a commencé à démarrer.
août 28 21:37:48 serveur audit[23166]: AVC apparmor="DENIED" operation="open" profile="/usr/sbin/mysqld" name="/proc/23166/status" pid=23166 comm="mysqld" requested_mask="r" denied_mask="r" fsuid=121 ouid=121
août 28 21:37:48 serveur audit[23166]: AVC apparmor="DENIED" operation="open" profile="/usr/sbin/mysqld" name="/sys/devices/system/node/" pid=23166 comm="mysqld" requested_mask="r" denied_mask="r" fsuid=121 ouid=0
août 28 21:37:48 serveur audit[23166]: AVC apparmor="DENIED" operation="open" profile="/usr/sbin/mysqld" name="/proc/23166/status" pid=23166 comm="mysqld" requested_mask="r" denied_mask="r" fsuid=121 ouid=121
août 28 21:37:48 serveur kernel: audit: type=1400 audit(1503949068.565:760): apparmor="DENIED" operation="open" profile="/usr/sbin/mysqld" name="/proc/23166/status" pid=23166 comm="mysqld" requested_mask="r" denied_mask="r" fsuid=121 ouid=121
août 28 21:37:48 serveur kernel: audit: type=1400 audit(1503949068.565:761): apparmor="DENIED" operation="open" profile="/usr/sbin/mysqld" name="/sys/devices/system/node/" pid=23166 comm="mysqld" requested_mask="r" denied_mask="r" fsuid=121 ouid=0
août 28 21:37:48 serveur kernel: audit: type=1400 audit(1503949068.565:762): apparmor="DENIED" operation="open" profile="/usr/sbin/mysqld" name="/proc/23166/status" pid=23166 comm="mysqld" requested_mask="r" denied_mask="r" fsuid=121 ouid=121
août 28 21:37:48 serveur systemd[1]: mysql.service: Main process exited, code=exited, status=1/FAILURE
lines 2077-2121/2121 (END)
Dernière modification par Snaeffel (Le 28/08/2017, à 20:42)
Hors ligne
#12 Le 29/08/2017, à 07:08
- bruno
Re : [RESOLU] Problème apparmor et mysql
C'est tout de même étrange d'avoir encore des messages d'erreurs provenant de apparmor.
Est-tu sûr de ne rien avoir dans les logs ? Voir les fichiers /var/log/mysql.err /var/log/mysql.log /var/log/mysql/error.log Cela aiderait à comprendre ce qui ce passe.
#13 Le 29/08/2017, à 08:40
- Snaeffel
Re : [RESOLU] Problème apparmor et mysql
Je n'ai aucun de ces fichiers dans /var/log...
Je suis allé consulter la doc pour vois si on pouvait activer/désactiver les logs pour mysql, et j'ai trouvé des paramètres à modifier dans le fichier /etc/mysql/my.cnf
Mais ce fichier chez moi ne contient pas grand chose :
#
# The MySQL database server configuration file.
#
# You can copy this to one of:
# - "/etc/mysql/my.cnf" to set global options,
# - "~/.my.cnf" to set user-specific options.
#
# One can use all long options that the program supports.
# Run program with --help to get a list of available options and with
# --print-defaults to see which it would actually understand and use.
#
# For explanations see
# http://dev.mysql.com/doc/mysql/en/server-system-variables.html
#
# * IMPORTANT: Additional settings that can override those from this file!
# The files must end with '.cnf', otherwise they'll be ignored.
#
!includedir /etc/mysql/conf.d/
!includedir /etc/mysql/mysql.conf.d/
Et c'est tout.
Hors ligne
#14 Le 29/08/2017, à 09:01
- Snaeffel
Re : [RESOLU] Problème apparmor et mysql
J'ai copié le contenu de /etc/mysql/mysql.conf.d/mysqld.cnf dans /etc/mysql/my.cnf
J'ai décommenté ces deux lignes :
general_log_file = /var/log/mysql/mysql.log
general_log = 1
Mon fichier my.cnf :
#
# The MySQL database server configuration file.
#
# You can copy this to one of:
# - "/etc/mysql/my.cnf" to set global options,
# - "~/.my.cnf" to set user-specific options.
#
# One can use all long options that the program supports.
# Run program with --help to get a list of available options and with
# --print-defaults to see which it would actually understand and use.
#
# For explanations see
# http://dev.mysql.com/doc/mysql/en/server-system-variables.html
# This will be passed to all mysql clients
# It has been reported that passwords should be enclosed with ticks/quotes
# escpecially if they contain "#" chars...
# Remember to edit /etc/mysql/debian.cnf when changing the socket location.
# Here is entries for some specific programs
# The following values assume you have at least 32M ram
[mysqld_safe]
socket = /var/run/mysqld/mysqld.sock
nice = 0
[mysqld]
#
# * Basic Settings
#
user = mysql
pid-file = /var/run/mysqld/mysqld.pid
socket = /var/run/mysqld/mysqld.sock
port = 3306
basedir = /usr
datadir = /var/lib/mysql
tmpdir = /tmp
lc-messages-dir = /usr/share/mysql
skip-external-locking
#
# Instead of skip-networking the default is now to listen only on
# localhost which is more compatible and is not less secure.
bind-address = 127.0.0.1
#
# * Fine Tuning
#
key_buffer_size = 16M
max_allowed_packet = 16M
thread_stack = 192K
thread_cache_size = 8
# This replaces the startup script and checks MyISAM tables if needed
# the first time they are touched
myisam-recover-options = BACKUP
#max_connections = 100
#table_cache = 64
#thread_concurrency = 10
#
# * Query Cache Configuration
#
query_cache_limit = 1M
query_cache_size = 16M
#
# * Logging and Replication
#
# Both location gets rotated by the cronjob.
# Be aware that this log type is a performance killer.
# As of 5.1 you can enable the log at runtime!
general_log_file = /var/log/mysql/mysql.log
general_log = 1
#
# Error log - should be very few entries.
#
log_error = /var/log/mysql/error.log
#
# Here you can see queries with especially long duration
#log_slow_queries = /var/log/mysql/mysql-slow.log
#long_query_time = 2
#log-queries-not-using-indexes
#
# The following can be used as easy to replay backup logs or for replication.
# note: if you are setting up a replication slave, see README.Debian about
# other settings you may need to change.
#server-id = 1
#log_bin = /var/log/mysql/mysql-bin.log
expire_logs_days = 10
max_binlog_size = 100M
#binlog_do_db = include_database_name
#binlog_ignore_db = include_database_name
#
# * InnoDB
#
# InnoDB is enabled by default with a 10MB datafile in /var/lib/mysql/.
# Read the manual for more InnoDB related options. There are many!
#
# * Security Features
#
# Read the manual, too, if you want chroot!
# chroot = /var/lib/mysql/
#
# For generating SSL certificates I recommend the OpenSSL GUI "tinyca".
#
# ssl-ca=/etc/mysql/cacert.pem
# ssl-cert=/etc/mysql/server-cert.pem
# ssl-key=/etc/mysql/server-key.pem
Toujours pas de log en vue.
J'ai essayé de faire
sudo service mysql reload
Et j'obtiens
* Reloading MySQL database server mysqld
mysqladmin: connect to server at 'localhost' failed
error: 'Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2)'
Check that mysqld is running and that the socket: '/var/run/mysqld/mysqld.sock' exists!
Hors ligne
#15 Le 29/08/2017, à 10:00
- pires57
Re : [RESOLU] Problème apparmor et mysql
Salut,
Tu as passé des mises à jours avant le bug?
Est ce que tu pourrais renvoyer le contenu du fichier
/etc/apparmor.d/usr.sbin.mysqld
?
EDIT : toutes mes excuses, déjà la.
Essayes de rajouter cette ligne
/etc/mysql/* r,
après celle ci :
/etc/mysql/** r,
C'est au environs des lignes 20 - 30
Ensuite tu tapes les commandes suivantes :
systemctl restart apparmor.service
service mysql stop
service mysql start
Dernière modification par pires57 (Le 29/08/2017, à 10:04)
Utilisateur d'Archlinux, Ubuntu et Kali Linux
Administrateur système et réseau spécialisé Linux.
LinkedIn
Hors ligne
#16 Le 29/08/2017, à 10:39
- bruno
Re : [RESOLU] Problème apparmor et mysql
La suggestion de pires57 est effectivement à essayer.
Cependant tu n'aurais pas dû modifier ainsi les fichiers de configuration de MySQL. le fichier my.cnf est presque vide car il sert surtout à "sourcer" les fichiers présents dans /etc/mysql/conf.d/ et /etc/mysql/mysql.conf.d/. Je t'invite à remettre les fichiers de configuration par défaut tels qu'ils sont fournis par les paquets mysql*
Il y a deux choses qui me paraissent vraiment très mystérieuses :
- tu as toujours des erreurs dues a apparmor, alors qu'il est censé être désactivé !
- tu n'as aucun fichier de log ! (si cela fonctionnait avant tu devrais au moins avoir les anciens logs.)
en désespoir de cause tu pourras toujours essayer de supprimer complètement mysql-server :
sudo apt purge mysql-server mysql-server-5.7
Attention: si tu as des bases de données, elles seront supprimées.
Puis réinstaller le paquet mysql-server en répondant bien aux questions posées lors de l’installation
Dernière modification par bruno (Le 29/08/2017, à 12:56)
#17 Le 29/08/2017, à 10:58
- pires57
Re : [RESOLU] Problème apparmor et mysql
Il y a deux choses qui me paraissent vraiment très mystérieuses :
- tu as toujours des erreurs dues a apparmor, alors qu'il est censé être désactivé !
- tu n'as aucun fichier de log ! (si cela fonctionnait avant tu devrais au moins avoir les anciens logs.)
Ce n'est pas forcement bizarre. Apparmor à pu être relancé de différente manières (cron, reboot ... ) tu ne connais pas le contexte mais le comportement peut s'expliquer.
Ci la config logs étaient en commentaire alors ce n'est pas non plus étonnant.
en désespoir de cause tu pourras toujours essayer de supprimer complètement mysql-server :
sudo apt purg emsql-server mysql-server-5.7
Attention: si tu as des bases de données, elles seront supprimées.
Puis réinstaller le paquet mysql-server en répondant bien aux qustions posées lors de l'installatiopn
J'aimerais bien ne pas en arriver à ce point, si apparmor bloque c'est que quelques chose ne lui plaît pas. Je doute qu'une simple réinstallation du package le débloque.
Utilisateur d'Archlinux, Ubuntu et Kali Linux
Administrateur système et réseau spécialisé Linux.
LinkedIn
Hors ligne
#18 Le 29/08/2017, à 11:20
- Snaeffel
Re : [RESOLU] Problème apparmor et mysql
Salut,
Tu as passé des mises à jours avant le bug?
Oui, il y a eu des mises à jour, mais comme c'était les vacances, je ne me suis pas servi de Apache et Mysql, donc je ne sais pas quand exactement.
Essayes de rajouter cette ligne
/etc/mysql/* r,
après celle ci :
/etc/mysql/** r,
C'est au environs des lignes 20 - 30
Ensuite tu tapes les commandes suivantes :
systemctl restart apparmor.service service mysql stop service mysql start
J'ai rajouté la ligne, mais j'ai toujours ceci :
matthieu@serveur:~$ systemctl restart apparmor.service
matthieu@serveur:~$ service mysql stop
matthieu@serveur:~$ service mysql start
Job for mysql.service failed because the control process exited with error code. See "systemctl status mysql.service" and "journalctl -xe" for details.
Cherche fichier de log désespérément...
Hors ligne
#19 Le 29/08/2017, à 11:27
- pires57
Re : [RESOLU] Problème apparmor et mysql
Tu renvoie le fichier de log s'il te plait? le message à peut-etre changer avec la modif
journalctl -xe
Utilisateur d'Archlinux, Ubuntu et Kali Linux
Administrateur système et réseau spécialisé Linux.
LinkedIn
Hors ligne
#20 Le 29/08/2017, à 11:40
- Snaeffel
Re : [RESOLU] Problème apparmor et mysql
Le voilà :
journalctl -xe
août 29 12:39:01 serveur CRON[32249]: (root) CMD ( [ -x /usr/lib/php/sessionclean ] && /usr/lib/php/sessionclean)
août 29 12:39:01 serveur CRON[32248]: pam_unix(cron:session): session closed for user root
août 29 12:39:02 serveur systemd[1]: Failed to start MySQL Community Server.
-- Subject: L'unité (unit) mysql.service a échoué
-- Defined-By: systemd
-- Support: http://lists.freedesktop.org/mailman/listinfo/systemd-devel
--
-- L'unité (unit) mysql.service a échoué, avec le résultat failed.
août 29 12:39:02 serveur systemd[1]: mysql.service: Unit entered failed state.
août 29 12:39:02 serveur systemd[1]: mysql.service: Failed with result 'exit-code'.
août 29 12:39:02 serveur systemd[1]: mysql.service: Service hold-off time over, scheduling restart.
août 29 12:39:02 serveur systemd[1]: Stopped MySQL Community Server.
-- Subject: L'unité (unit) mysql.service a terminé son arrêt
-- Defined-By: systemd
-- Support: http://lists.freedesktop.org/mailman/listinfo/systemd-devel
--
-- L'unité (unit) mysql.service a terminé son arrêt.
août 29 12:39:02 serveur systemd[1]: Starting MySQL Community Server...
-- Subject: L'unité (unit) mysql.service a commencé à démarrer
-- Defined-By: systemd
-- Support: http://lists.freedesktop.org/mailman/listinfo/systemd-devel
--
-- L'unité (unit) mysql.service a commencé à démarrer.
août 29 12:39:02 serveur audit[32302]: AVC apparmor="DENIED" operation="open" profile="/usr/sbin/mysqld" name="/proc/32302/status" pid=32302 comm="mysqld" requested_mask="r" d
août 29 12:39:02 serveur audit[32302]: AVC apparmor="DENIED" operation="open" profile="/usr/sbin/mysqld" name="/sys/devices/system/node/" pid=32302 comm="mysqld" requested_mas
août 29 12:39:02 serveur audit[32302]: AVC apparmor="DENIED" operation="open" profile="/usr/sbin/mysqld" name="/proc/32302/status" pid=32302 comm="mysqld" requested_mask="r" d
août 29 12:39:02 serveur kernel: audit: type=1400 audit(1504003142.629:1056): apparmor="DENIED" operation="open" profile="/usr/sbin/mysqld" name="/proc/32302/status" pid=32302
août 29 12:39:02 serveur kernel: audit: type=1400 audit(1504003142.629:1057): apparmor="DENIED" operation="open" profile="/usr/sbin/mysqld" name="/sys/devices/system/node/" pi
août 29 12:39:02 serveur kernel: audit: type=1400 audit(1504003142.629:1058): apparmor="DENIED" operation="open" profile="/usr/sbin/mysqld" name="/proc/32302/status" pid=32302
août 29 12:39:02 serveur systemd[1]: mysql.service: Main process exited, code=exited, status=1/FAILURE
lines 1997-2026/2026 (END)
Hors ligne
#21 Le 29/08/2017, à 13:02
- bruno
Re : [RESOLU] Problème apparmor et mysql
Toujours pareil…
Il faut vraiment vérifier si tu n'es pas concerné par ce bug : https://bugs.launchpad.net/ubuntu/+sour … ug/1658239
Pour cela, voir la version de apparmor installée :
apt-cache policy apparmor
et le contenu du fichier /etc/apparmor.d/abstractions/base
Voir aussi ce rapport de bug : https://bugs.launchpad.net/ubuntu/+sour … ug/1610765
Dernière modification par bruno (Le 29/08/2017, à 13:02)
#22 Le 29/08/2017, à 13:18
- pires57
Re : [RESOLU] Problème apparmor et mysql
https://blogs.oracle.com/jsmyth/apparmor-and-mysql
Regardes également de ce côté.
Utilisateur d'Archlinux, Ubuntu et Kali Linux
Administrateur système et réseau spécialisé Linux.
LinkedIn
Hors ligne
#23 Le 29/08/2017, à 16:24
- Snaeffel
Re : [RESOLU] Problème apparmor et mysql
C'est pas évident pour moi la lecture des rapports de bug...
J'ai parcouru le lien posté par pires57, et j'ai fait :
sudo apt install apparmor-utils
sudo aa-complain /usr/sbin/mysqld
sudo aa-status
apparmor module is loaded.
23 profiles are loaded.
22 profiles are in enforce mode.
/sbin/dhclient
/usr/bin/evince
/usr/bin/evince-previewer
/usr/bin/evince-previewer//sanitized_helper
/usr/bin/evince-thumbnailer
/usr/bin/evince-thumbnailer//sanitized_helper
/usr/bin/evince//sanitized_helper
/usr/lib/NetworkManager/nm-dhcp-client.action
/usr/lib/NetworkManager/nm-dhcp-helper
/usr/lib/connman/scripts/dhclient-script
/usr/lib/cups/backend/cups-pdf
/usr/lib/lightdm/lightdm-guest-session
/usr/lib/lightdm/lightdm-guest-session//chromium
/usr/lib/snapd/snap-confine
/usr/lib/snapd/snap-confine//mount-namespace-capture-helper
/usr/sbin/cups-browsed
/usr/sbin/cupsd
/usr/sbin/cupsd//third_party
/usr/sbin/ippusbxd
/usr/sbin/tcpdump
webbrowser-app
webbrowser-app//oxide_helper
1 profiles are in complain mode.
/usr/sbin/mysqld
1 processes have profiles defined.
1 processes are in enforce mode.
/usr/sbin/cups-browsed (1074)
0 processes are in complain mode.
0 processes are unconfined but have a profile defined.
Ce qui a pour effet je crois de mettre le profil /usr/bin/mysqld en mode "complain".
Ensuite, j'ai lancé la commande trouvée sur la page en question :
mysqld_safe --datadir=/data
Ça démarre pas, mais j'ai ces erreurs intéressantes :
2017-08-29T15:07:59.543002Z mysqld_safe Logging to syslog.
/usr/bin/mysqld_safe: 647: /usr/bin/mysqld_safe: cannot create /var/log/mysql/error.log: Directory nonexistent
Logging to '/var/log/mysql/error.log'.
2017-08-29T15:07:59.554086Z mysqld_safe Starting mysqld daemon with databases from /data
/usr/bin/mysqld_safe: 152: /usr/bin/mysqld_safe: cannot create /var/log/mysql/error.log: Directory nonexistent
/usr/bin/mysqld_safe: 1: eval: cannot create /var/log/mysql/error.log: Directory nonexistent
2017-08-29T15:07:59.557929Z mysqld_safe mysqld from pid file /var/run/mysqld/mysqld.pid ended
/usr/bin/mysqld_safe: 152: /usr/bin/mysqld_safe: cannot create /var/log/mysql/error.log: Directory nonexistent
Ensuite j'ai essayé :
sudo service mysql restart
Job for mysql.service failed because the control process exited with error code. See "systemctl status mysql.service" and "journalctl -xe" for details.
Pas mieux donc, mais journalctl -xe renvoie juste après :
journalctl -xe
-- Support: http://lists.freedesktop.org/mailman/listinfo/systemd-devel
--
-- L'unité (unit) mysql.service a commencé à démarrer.
août 29 17:09:22 serveur audit[22672]: AVC apparmor="ALLOWED" operation="open" profile="/usr/sbin/mysqld" name="/proc/22672/status" pid=22672 comm="mysqld" requested_mask="r" denied_mask="r" fsuid=121 ouid=121
août 29 17:09:22 serveur audit[22672]: AVC apparmor="ALLOWED" operation="open" profile="/usr/sbin/mysqld" name="/sys/devices/system/node/" pid=22672 comm="mysqld" requested_mask="r" denied_mask="r" fsuid=121 ouid=0
août 29 17:09:22 serveur audit[22672]: AVC apparmor="ALLOWED" operation="open" profile="/usr/sbin/mysqld" name="/sys/devices/system/node/node0/meminfo" pid=22672 comm="mysqld" requested_mask="r" denied_mask="r" fsuid=121 o
août 29 17:09:22 serveur audit[22672]: AVC apparmor="ALLOWED" operation="open" profile="/usr/sbin/mysqld" name="/proc/22672/status" pid=22672 comm="mysqld" requested_mask="r" denied_mask="r" fsuid=121 ouid=121
août 29 17:09:22 serveur kernel: audit: type=1400 audit(1504019362.106:639): apparmor="ALLOWED" operation="open" profile="/usr/sbin/mysqld" name="/proc/22672/status" pid=22672 comm="mysqld" requested_mask="r" denied_mask="
août 29 17:09:22 serveur kernel: audit: type=1400 audit(1504019362.106:640): apparmor="ALLOWED" operation="open" profile="/usr/sbin/mysqld" name="/sys/devices/system/node/" pid=22672 comm="mysqld" requested_mask="r" denied
août 29 17:09:22 serveur kernel: audit: type=1400 audit(1504019362.106:641): apparmor="ALLOWED" operation="open" profile="/usr/sbin/mysqld" name="/sys/devices/system/node/node0/meminfo" pid=22672 comm="mysqld" requested_ma
août 29 17:09:22 serveur kernel: audit: type=1400 audit(1504019362.106:642): apparmor="ALLOWED" operation="open" profile="/usr/sbin/mysqld" name="/proc/22672/status" pid=22672 comm="mysqld" requested_mask="r" denied_mask="
août 29 17:09:22 serveur systemd[1]: mysql.service: Main process exited, code=exited, status=1/FAILURE
août 29 17:09:52 serveur systemd[1]: Failed to start MySQL Community Server.
-- Subject: L'unité (unit) mysql.service a échoué
-- Defined-By: systemd
-- Support: http://lists.freedesktop.org/mailman/listinfo/systemd-devel
--
-- L'unité (unit) mysql.service a échoué, avec le résultat failed.
août 29 17:09:52 serveur systemd[1]: mysql.service: Unit entered failed state.
août 29 17:09:52 serveur systemd[1]: mysql.service: Failed with result 'exit-code'.
août 29 17:09:52 serveur sudo[22652]: pam_unix(sudo:session): session closed for user root
août 29 17:09:52 serveur systemd[1]: mysql.service: Service hold-off time over, scheduling restart.
août 29 17:09:52 serveur systemd[1]: Stopped MySQL Community Server.
-- Subject: L'unité (unit) mysql.service a terminé son arrêt
-- Defined-By: systemd
-- Support: http://lists.freedesktop.org/mailman/listinfo/systemd-devel
--
-- L'unité (unit) mysql.service a terminé son arrêt.
août 29 17:09:52 serveur systemd[1]: Starting MySQL Community Server...
-- Subject: L'unité (unit) mysql.service a commencé à démarrer
-- Defined-By: systemd
-- Support: http://lists.freedesktop.org/mailman/listinfo/systemd-devel
--
-- L'unité (unit) mysql.service a commencé à démarrer.
août 29 17:09:52 serveur audit[22754]: AVC apparmor="ALLOWED" operation="open" profile="/usr/sbin/mysqld" name="/proc/22754/status" pid=22754 comm="mysqld" requested_mask="r" denied_mask="r" fsuid=121 ouid=121
août 29 17:09:52 serveur audit[22754]: AVC apparmor="ALLOWED" operation="open" profile="/usr/sbin/mysqld" name="/sys/devices/system/node/" pid=22754 comm="mysqld" requested_mask="r" denied_mask="r" fsuid=121 ouid=0
août 29 17:09:52 serveur audit[22754]: AVC apparmor="ALLOWED" operation="open" profile="/usr/sbin/mysqld" name="/sys/devices/system/node/node0/meminfo" pid=22754 comm="mysqld" requested_mask="r" denied_mask="r" fsuid=121 o
août 29 17:09:52 serveur audit[22754]: AVC apparmor="ALLOWED" operation="open" profile="/usr/sbin/mysqld" name="/proc/22754/status" pid=22754 comm="mysqld" requested_mask="r" denied_mask="r" fsuid=121 ouid=121
août 29 17:09:52 serveur kernel: audit: type=1400 audit(1504019392.491:643): apparmor="ALLOWED" operation="open" profile="/usr/sbin/mysqld" name="/proc/22754/status" pid=22754 comm="mysqld" requested_mask="r" denied_mask="
août 29 17:09:52 serveur kernel: audit: type=1400 audit(1504019392.491:644): apparmor="ALLOWED" operation="open" profile="/usr/sbin/mysqld" name="/sys/devices/system/node/" pid=22754 comm="mysqld" requested_mask="r" denied
août 29 17:09:52 serveur kernel: audit: type=1400 audit(1504019392.491:645): apparmor="ALLOWED" operation="open" profile="/usr/sbin/mysqld" name="/sys/devices/system/node/node0/meminfo" pid=22754 comm="mysqld" requested_ma
août 29 17:09:52 serveur kernel: audit: type=1400 audit(1504019392.491:646): apparmor="ALLOWED" operation="open" profile="/usr/sbin/mysqld" name="/proc/22754/status" pid=22754 comm="mysqld" requested_mask="r" denied_mask="
août 29 17:09:52 serveur systemd[1]: mysql.service: Main process exited, code=exited, status=1/FAILURE
lines 2054-2096/2096 (END)
Où là pour le coup j'ai ALLOWED à la place de DENIED, ce qui laisserait penser que apparmor pose problème (ah bon ?).
Mais du coup, c'est peut-être pas mon seul soucis.
J'ai bien envie de créer /var/log/mysql/ à la main pour voir, mais quels droits/propriétaires lui donner ?
Hors ligne
#24 Le 29/08/2017, à 17:05
- bruno
Re : [RESOLU] Problème apparmor et mysql
J'ai bien envie de créer /var/log/mysql/ à la main pour voir, mais quels droits/propriétaires lui donner ?
sudo mkdir /var/log/mysql
sudo chown mysql:adm /var/log/mysql
sudo chmod 750 /var/log/mysql
sudo chmod g+s /var/log/mysql
Dernière modification par bruno (Le 29/08/2017, à 17:05)
#25 Le 29/08/2017, à 19:04
- Snaeffel
Re : [RESOLU] Problème apparmor et mysql
sudo mkdir /var/log/mysql
sudo chown mysql:adm /var/log/mysql
sudo chmod 750 /var/log/mysql
sudo chmod g+s /var/log/mysql
sudo service mysql reload
* Reloading MySQL database server mysqld [ OK ]
● mysql.service - MySQL Community Server
Loaded: loaded (/lib/systemd/system/mysql.service; enabled; vendor preset: enabled)
Active: active (running) since mar. 2017-08-29 19:44:19 CEST; 3min 4s ago
Process: 1215 ExecStartPost=/usr/share/mysql/mysql-systemd-start post (code=exited, status=0/SUCCESS)
Process: 1194 ExecStartPre=/usr/share/mysql/mysql-systemd-start pre (code=exited, status=0/SUCCESS)
Main PID: 1214 (mysqld)
CGroup: /system.slice/mysql.service
└─1214 /usr/sbin/mysqld
Et voilà... et les logs sont revenus. Je sais pas ce qui a pu causer ça, mais c'est un peu flippant quand même.
Tout à l'air ok, sauf que j'ai viandé ma config apache et mes virtualhosts en désinstallant et réinstallant... mais je devrais m'en sortir, ça fera l'objet d'un autre post si besoin.
Je passe en résolu, et adresse un grand merci à bruno et pires57 pour leur aide. Je vous fais de gros bisous.
Hors ligne
Pages : 1