logrotate fails on RHEL 7 due to selinux issue
Bug #1420690 reported by
Ken Snider
This bug affects 1 person
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Percona Server moved to https://jira.percona.com/projects/PS |
Invalid
|
Undecided
|
Unassigned | ||
5.5 |
Expired
|
Undecided
|
Unassigned | ||
5.6 |
Invalid
|
Undecided
|
Unassigned |
Bug Description
logrotate is unable to rotate the mysqld.log file under RHEL7, due to SELinux permissions.
When /etc/logrotate.
type=AVC msg=audit(
This prevents the log from rotating successfully.
tags: | added: pkg |
Changed in percona-server: | |
assignee: | nobody → Muhammad Irfan (muhammad-irfan) |
To post a comment you must log in.
Could not reproduce this with RHEL 7. Can you provide the output of sestatus?
[root@localhost ~]# uname -a localdomain 3.10.0- 123.el7. x86_64 #1 SMP Mon Jun 30 12:09:22 UTC 2014 x86_64 x86_64 x86_64 GNU/Linux
Linux localhost.
[root@localhost ~]#
[root@localhost ~]# logrotate -v -f /etc/logrotate. d/mysql d/mysql
reading config file /etc/logrotate.
Handling 1 logs
rotating pattern: /var/lib/ mysql/mysqld. log forced from command line (5 rotations) mysql/mysqld. log mysql/mysqld. log, log->rotateCount is 5 [0-9][0- 9][0-9] [0-9][0- 9][0-9] [0-9]' mysql/mysqld. log.5.gz to /var/lib/ mysql/mysqld. log.6.gz (rotatecount 5, logstart 1, i 5), mysql/mysqld. log.5.gz does not exist mysql/mysqld. log.4.gz to /var/lib/ mysql/mysqld. log.5.gz (rotatecount 5, logstart 1, i 4), mysql/mysqld. log.4.gz does not exist mysql/mysqld. log.3.gz to /var/lib/ mysql/mysqld. log.4.gz (rotatecount 5, logstart 1, i 3), mysql/mysqld. log.3.gz does not exist mysql/mysqld. log.2.gz to /var/lib/ mysql/mysqld. log.3.gz (rotatecount 5, logstart 1, i 2), mysql/mysqld. log.2.gz does not exist mysql/mysqld. log.1.gz to /var/lib/ mysql/mysqld. log.2.gz (rotatecount 5, logstart 1, i 1), mysql/mysqld. log.1.gz does not exist mysql/mysqld. log.0.gz to /var/lib/ mysql/mysqld. log.1.gz (rotatecount 5, logstart 1, i 0), mysql/mysqld. log.0.gz does not exist mysql/mysqld. log.6.gz doesn't exist -- won't try to dispose of it u:object_ r:mysqld_ db_t:s0 mysql/mysqld. log to /var/lib/ mysql/mysqld. log.1 audit/audit. log 1426241282. 297:431) : avc: denied { getattr } for pid=4136 comm="mysqld_safe" path="/ sys/kernel/ mm/transparent_ hugepage/ enabled" dev="sysfs" ino=5013 scontext= system_ u:system_ r:mysqld_ safe_t: s0 tcontext= system_ u:object_ r:sysfs_ t:s0 tclass=file 1426241282. 297:431) : arch=c000003e syscall=4 success=no exit=-13 a0=7fdd40 a1=7fff740b4f30 a2=7fff740b4f30 a3=8 items=0 ppid=1 pid=4136 auid=4294967295 uid=0 gid=0 euid=0 suid=0 fsuid=0 egid=0 sgid=0 fsgid=0 tty=(none) ses=4294967295 comm="mysqld_safe" exe="/usr/bin/bash" subj=system_ u:system_ r:mysqld_ safe_t: s0 key=(null) 1426241285. 099:432) : pid=1 uid=0 auid=4294967295 ses=4294967295 subj=system_ u:system_ r:init_ t:s0 msg=' comm="mysqld" exe="/usr/ lib/systemd/ systemd" hostname=? addr=? terminal=? res=success' 1426241401. 496:433) : pid=4387 uid=0 auid=4294967295 ses=4294967295 subj=system_ u:system_ r:crond_ t:s0-s0: c0.c1023 msg='op= PAM:accounting acct="root" exe="/usr/ sbin/crond" hostname=? addr=? terminal=cron res=success' 1426241401. 497:434) : pid=4387 uid=0 auid=4294967295...
empty log files are not rotated, old logs are removed
considering log /var/lib/
log needs rotating
rotating log /var/lib/
dateext suffix '-20150313'
glob pattern '-[0-9]
renaming /var/lib/
old log /var/lib/
renaming /var/lib/
old log /var/lib/
renaming /var/lib/
old log /var/lib/
renaming /var/lib/
old log /var/lib/
renaming /var/lib/
old log /var/lib/
renaming /var/lib/
old log /var/lib/
log /var/lib/
fscreate context set to system_
renaming /var/lib/
running postrotate script
compressing log with: /bin/gzip
set default create context
[root@localhost ~]#
[root@localhost ~]# tail -f /var/log/
type=AVC msg=audit(
type=SYSCALL msg=audit(
type=SERVICE_START msg=audit(
type=USER_ACCT msg=audit(
type=CRED_ACQ msg=audit(