Message d'erreur récurrent sur Debian Jessie avec MariaDB
By Pierre-Alain B on Sunday, July 26 2015, 07:47 - Permalink
/etc/cron.daily/logrotate: error: error running shared postrotate script for '/var/log/mysql/mysql.log /var/log/mysql/mysql-slow.log /var/log/mysql/error.log ' run-parts: /etc/cron.daily/logrotate exited with return code 1
est le message reçu ponctuellement sur une machine Debian Jessie équipée de MariaDB.
Après une petite recherche au sein des scripts de logrotate, je réalisais que cette ligne :
MYADMIN="/usr/bin/mysqladmin --defaults-file=/etc/mysql/debian.cnf"
appelait la configuration placée dans /etc/mysql/debian.cnf qui ressemble à :
[client] host = localhost user = root password = socket = /var/run/mysqld/mysqld.sock [mysql_upgrade] host = localhost user = root password = socket = /var/run/mysqld/mysqld.sock basedir = /usr
On note bien l'absence de mot de passe pour l'utilisateur root qui explique la non-complétion du script de logrotate.
Pour régler temporairement le problème, on peut :
- créer un utilisateur "debian-sys-maint" avec les droits administrateurs sur le serveur MariaDB
- donner un mot de passe aléatoire à cet utilisateur
- compléter le fichier /etc/mysql/debian.cnf de manière adéquate :
[client] host = localhost user = debian-sys-maint password = motdepassealeatoire socket = /var/run/mysqld/mysqld.sock [mysql_upgrade] host = localhost user = debian-sys-maint password = motdepassealeatoire socket = /var/run/mysqld/mysqld.sock basedir = /usr