Add setfiles debug info for SELinux relabel

Signed-off-by: David Abdurachmanov <david.abdurachmanov@gmail.com>
This commit is contained in:
David Abdurachmanov 2019-01-19 10:11:27 +01:00
parent b6a4a616e1
commit 5db8342a8b
Signed by: davidlt
GPG Key ID: 7108702C938B13C1
2 changed files with 30 additions and 1 deletions

28
debug-setfiles.patch Normal file
View File

@ -0,0 +1,28 @@
diff --git a/imgcreate/kickstart.py b/imgcreate/kickstart.py
index 32d26b2..94a31a1 100644
--- a/imgcreate/kickstart.py
+++ b/imgcreate/kickstart.py
@@ -479,10 +479,19 @@ class SelinuxConfig(KickstartConfig):
return
try:
- rc = subprocess.call(['setfiles', '-p', '-e', '/proc',
- '-e', '/sys', '-e', '/dev',
- selinux.selinux_file_context_path(), '/'],
- preexec_fn=self.chroot)
+ cmd = ['setfiles', '-p', '-e', '/proc',
+ '-e', '/sys', '-e', '/dev',
+ selinux.selinux_file_context_path(), '/']
+ proc = subprocess.Popen(cmd,
+ preexec_fn=self.chroot,
+ stdout=subprocess.PIPE,
+ stderr=subprocess.PIPE)
+ outs, errs = proc.communicate()
+ rc = proc.returncode
+ logging.info("setfiles command: {0}".format(cmd))
+ logging.info("setfiles returncode: {0}".format(rc))
+ logging.info("setfiles stdout: {0}".format(outs))
+ logging.info("setfiles stderr: {0}".format(errs))
except OSError as e:
if e.errno == errno.ENOENT:
logging.info('The setfiles command is not available.')

View File

@ -17,12 +17,13 @@
Summary: Tools for building live CDs
Name: livecd-tools
Version: 26.1
Release: 1%{?dist}
Release: 1.davidlt.0%{?dist}
Epoch: 1
License: GPLv2
Group: System Environment/Base
URL: https://github.com/livecd-tools/livecd-tools
Source0: https://releases.pagure.org/%{name}/%{name}-%{version}.tar.gz
Patch0: debug-setfiles.patch
%if %{with python2}
BuildRequires: python2-devel