Re: mysql vs selinux

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Mon, 06 Jul 2009 08:10:29 -0400, Daniel J Walsh wrote:

> On 07/05/2009 11:57 PM, Amadeus W.M. wrote:
>> Trying to run mysqld with datadir=/data/mysql (i.e. different than the
>> default datadir=/var/lib/mysql). When I start mysqld for the first time
>> it fails:
>>
>> [root@alm ~]# /etc/rc.d/init.d/mysqld start Initializing MySQL
>> database:  Installing MySQL system tables... 090705 23:01:52 [Warning]
>> Can't create test file /data/mysql/alm.lower-test 090705 23:01:52
>> [Warning] Can't create test file /data/mysql/alm.lower-test
>> /usr/libexec/mysqld: Can't change dir to '/data/mysql/' (Errcode: 13)
>> 090705 23:01:52 [ERROR] Aborting
>>
>>
>>
>> and selinux pops up and says
>>
>> Summary:
>> SELinux is preventing mysqld (mysqld_t) "search" to / (default_t).
>>
>> Detailed Description:
>> SELinux denied access requested by mysqld. / may be a mislabeled. /
>> default SELinux type is root_t, but its current type is default_t.
>> Changing this file back to the default type, may fix your problem.
>>
>> <more stuff>
>>
>>
>> Poking around on google I found this suggestion:
>>
>>
>> http://www.linuxforums.org/forum/servers/54215-moving-mysql-datafile-
>> another-location-2.html
>>
>> chcon -R -u system_u -r object_r -t mysqld_db_t /home/mysqldb chcon -R
>> -u system_u -r object_r -t mysqld_db_t /var/lib/mysql/ chcon -u
>> system_u -r object_r -t mysqld_etc_t /etc/my.cnf
>>
>> with /data/mysql instead of /home/mysqldb, of course.
>>
>> This was as of FC7. Would this still be the right thing to do in F11?
>> I'm really being patient here with selinux, trying to give it a 2nd
>> chance (first chance was about F3 or F4). I'm trying to avoid the
>> barbaric solution of disabling it alltogether yet again.
>>
>> Oh, by the way, I am able to run mysqld without a hitch even with
>> selinux enabled provided that I use the default datadir=/var/lib/mysql.
>> That's not acceptable though, as my /var is too small for the colossal
>> amount of data I have.
>>
>>
>> I tried to keep this post relatively short, so I didn't include all
>> selinux info. If more is necessary, I'll post it. Please help!
>>
>>
>>
>>
>>
> Here is a new guide we are working on for setting up different confined
> services.  There is a chapter on mysql.
> 
> 
> 
> http://sradvan.fedorapeople.org/SELinux_Managing_Confined_Services/en-US/
html/
> 
> Specifically check out the chapter this page
> 
> http://sradvan.fedorapeople.org/SELinux_Managing_Confined_Services/en-US/
html/sect-Managing_Confined_Services-MySQL-Configuration_Examples.html


Thanks, I followed the instructions:

[root@alm ~]# semanage fcontext -a -t mysqld_db_t "/data/mysql(/.*)?"
[root@alm ~]# restorecon -R -v /data/mysql

but now selinux complains about /data itself:

Summary
SELinux is preventing access to files with the default label, default_t. 

Additional Information
Source Context:  unconfined_u:system_r:mysqld_t:s0
Target Context:  system_u:object_r:default_t:s0
Target Objects:  /data [ dir ]
Source:  mysqld
Source Path:  /usr/libexec/mysqld

And indeed, 

[root@alm ~]# ls -lZd /data
drwxr-xr-x. amadeus users system_u:object_r:default_t:s0   /data



So I'm guessing I should add a context for /data, something like

semanage fcontext -a -t data_t "/data"
restorecon -R -v /data/mysql

Is that correct?



Also, in addition to /data selinux is also complaining abut / :

Summary
SELinux is preventing mysqld (mysqld_t) "search" to / (default_t). 

Additional Information
Source Context:  unconfined_u:system_r:mysqld_t:s0
Target Context:  system_u:object_r:default_t:s0
Target Objects:  / [ dir ]
Source:  mysqld
Source Path:  /usr/libexec/mysqld


But 

[root@alm ~]# ls -lZd /
drwxr-xr-x. root root system_u:object_r:root_t:s0      /

i.e. / is not default_t. What gives?











-- 
fedora-list mailing list
fedora-list@xxxxxxxxxx
To unsubscribe: https://www.redhat.com/mailman/listinfo/fedora-list
Guidelines: http://fedoraproject.org/wiki/Communicate/MailingListGuidelines

[Index of Archives]     [Current Fedora Users]     [Fedora Desktop]     [Fedora SELinux]     [Yosemite News]     [Yosemite Photos]     [KDE Users]     [Fedora Tools]     [Fedora Docs]

  Powered by Linux