Bonjour à tous,

je vous fait part d'un soucis que j'ai depuis que j'ai installé F12, avec mysql-server 5.1.41 du dépôt remi.
Après l'installation du paquet, j'ai créé l'user mysql avec comme shell de connexion /sbin/nologin et comme répertoire perso : /var/lib/mysql.
J'essaye de lancer avec service mysqld start et il ne fait rien, si ce n'est des "alertes" dans le journal de SeLinux :
Résumé:

SELinux is preventing access to files with the label, file_t.

Description détaillée:

[login a un type permissif (local_login_t). Cet accès n'a pas été refusé.]

SELinux permission checks on files labeled file_t are being denied. file_t is
the context the SELinux kernel gives to files that do not have a label. This
indicates a serious labeling problem. No files on an SELinux box should ever be
labeled file_t. If you have just added a new disk drive to the system you can
relabel it using the restorecon command. Otherwise you should relabel the entire
file system.

Autoriser l'accès:

You can execute the following command as root to relabel your computer system:
"touch /.autorelabel; reboot"

Informations complémentaires:

Contexte source               system_u:system_r:local_login_t:s0-s0:c0.c1023
Contexte cible                system_u:object_r:file_t:s0
Objets du contexte            neo [ dir ]
source                        login
Chemin de la source           /bin/login
Port                          <Inconnu>
Hôte                         localhost.localdomain
Paquetages RPM source         util-linux-ng-2.16-10.2.fc12
Paquetages RPM cible          
Politique RPM                 selinux-policy-3.6.32-41.fc12
Selinux activé               True
Type de politique             targeted
Mode strict                   Enforcing
Nom du plugin                 file
Nom de l'hôte                localhost.localdomain
Plateforme                    Linux localhost.localdomain
                              2.6.31.5-127.fc12.x86_64 #1 SMP Sat Nov 7 21:11:14
                              EST 2009 x86_64 x86_64
Compteur d'alertes            3
Première alerte              ven. 27 nov. 2009 01:48:28 CET
Dernière alerte              ven. 27 nov. 2009 01:48:28 CET
ID local                      7e687b01-750d-483d-9dc2-4f67ec8814d6
Numéros des lignes           

Messages d'audit bruts        

node=localhost.localdomain type=AVC msg=audit(1259282908.510:39049): avc:  denied  { search } for  pid=1655 comm="login" name="neo" dev=sdb5 ino=8193 scontext=system_u:system_r:local_login_t:s0-s0:c0.c1023 tcontext=system_u:object_r:file_t:s0 tclass=dir

node=localhost.localdomain type=SYSCALL msg=audit(1259282908.510:39049): arch=c000003e syscall=80 success=yes exit=128 a0=14f2100 a1=0 a2=0 a3=7fffe4b3e560 items=0 ppid=1436 pid=1655 auid=500 uid=500 gid=500 euid=500 suid=500 fsuid=500 egid=500 sgid=500 fsgid=500 tty=tty2 ses=2 comm="login" exe="/bin/login" subj=system_u:system_r:local_login_t:s0-s0:c0.c1023 key=(null)
et un bel échec en fin d'essaie de mysqld :
# service mysqld start
Timeout error occurred trying to start MySQL Daemon.
Démarrage de MySQL :                                       [ÉCHOUÉ]
Je ne vois pas comment régler ce soucis si vous avez une idée.

Merci d'avance.
> Après l'installation du paquet, j'ai créé l'user mysql avec comme shell de connexion /sbin/nologin et comme répertoire perso : /var/lib/mysql.

pourquoi faire ?

+
remi wrote:> Après l'installation du paquet, j'ai créé l'user mysql avec comme shell de connexion /sbin/nologin et comme répertoire perso : /var/lib/mysql.

pourquoi faire ?

+
il n'avait pas été créé, sinon je vais essayer de le supprimer.
J'ai essayé de supprimer et de réinstaller le paquet l'user mysql a été créé cette fois tout seul mais toujours impossible de lancer le serveur.
un restorecon -R /var/lib/mysql ?

+
remi wrote:un restorecon -R /var/lib/mysql ?

+
Tester mais mysqld ne veut rien savoir... il ne m'aime plus ...^^
Afin d'isoler le problème, tu peux désactiver Selinux temporairement
Je viens de désactiver SeLinux mais il ne veut toujours pas.
Des erreurs dans /var/log/mysqld.log ?
proxy wrote:Des erreurs dans /var/log/mysqld.log ?
Juste ceci :
# tail /var/log/mysqld.log
091127 23:10:13 [Note] Plugin 'ndbcluster' is disabled.
/usr/libexec/mysqld: Can't find file: './mysql/plugin.frm' (errno: 13)
091127 23:10:13 [ERROR] Can't open the mysql.plugin table. Please run mysql_upgrade to create it.
091127 23:10:13  InnoDB: Operating system error number 13 in a file operation.
InnoDB: The error means mysqld does not have the access rights to
InnoDB: the directory.
InnoDB: File name ./ibdata1
InnoDB: File operation call: 'open'.
InnoDB: Cannot continue operation.
091127 23:10:13 mysqld_safe mysqld from pid file /var/run/mysqld/mysqld.pid ended
il n'arrive pas à trouver ce fichier on dirait './mysql/plugin.frm'
J'ai réinstallé et mysqld se lance correctement, mais je ne sais pas d'ou provenait le bug. Merci.
Bienvenu au club! J'ai eu le même problème sur une machine. Même à la mise à jours par le noyau dans update-testing et sur le serveur Apache. Sans doute un bogue avec SELINUX, car en désinstallant et supprimant les fichiers de Mysql, par exemple, et en réinstallant après avoir mis SELINUX en permissif cela est passé!

Bizarrement sur deux autres machines, en dehors du problème avec le noyau testing, cela ne l'a pas fait...