Bug 1236062

Summary: selinux relabel triggers forcefsck twice
Product: Red Hat Enterprise Linux 6 Reporter: Michael Arbet <marbet>
Component: initscriptsAssignee: Lukáš Nykrýn <lnykryn>
Status: CLOSED ERRATA QA Contact: Leos Pol <lpol>
Severity: medium Docs Contact:
Priority: unspecified    
Version: 6.6CC: gangelop, lpol, psklenar
Target Milestone: rcKeywords: SELinux
Target Release: ---   
Hardware: Unspecified   
OS: Linux   
Whiteboard:
Fixed In Version: initscripts-9.03.50-1.el6 Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2016-05-11 01:06:31 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On:    
Bug Blocks: 1172231    

Description Michael Arbet 2015-06-26 12:59:25 UTC
Description of problem:
When both /.autorelabel and /forcefsck files are created and machine rebooted, fsck is performed twice due to design of /etc/rc.d/rc.sysinit file. In case of large filesystems with a lot of files it unnecessarily prolonges downtime.

The issue lies in fact that first fsck part is performed first, then selinux relabel comes and reboot. While the part of script responsible for relabeling removes the file /.autorelabel; the /forcefsck remains untouched and causes second filesystem check upon next statup


Version-Release number of selected component (if applicable):


How reproducible:
easily reproducible


Steps to Reproduce:
1. touch /forcefsck /.autorelabel; reboot

Actual results:
Filesystem check performed unnecessarily twice, time loss, downtime prolonged.


Expected results:
Filesystem check should be done once. My recommendation: rewrite rc.sysinit scipt thai it remove /forcefsck right after the check finishes.

Comment 2 Ondrej Vasik 2015-06-26 17:53:51 UTC
Basesystem is just dependency metapackage with no content. Reassigning to initscripts and adding Keyword SELinux. Lukas, please reassign to proper component if initscripts doesn't handle SELinux part.

Comment 3 Lukáš Nykrýn 2015-06-29 06:44:31 UTC
Should be easy to fix.

Comment 10 Leos Pol 2016-03-03 08:33:20 UTC
Patch looks sane.

$ touch /forcefsck /.autorelabel; reboot

with initscripts-9.03.49-1.el6
1. /sbin/fsck -T -t noopts=_netdev -A -a -C -F
2. selinux relabel
3. reboot
4. /sbin/fsck -T -t noopts=_netdev -A -a -C -F

with initscripts-9.03.51-1.el6
1. /sbin/fsck -T -t noopts=_netdev -A -a -C -F
2. selinux relabel
3. reboot
4. /sbin/fsck -T -t noopts=_netdev -A -a -C

Works as expected

Comment 12 errata-xmlrpc 2016-05-11 01:06:31 UTC
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.

For information on the advisory, and where to find the updated
files, follow the link below.

If the solution does not work for you, open a new bug report.

https://rhn.redhat.com/errata/RHBA-2016-0951.html