Bug 1271551 - DBus is not running in separate instance in chroot
DBus is not running in separate instance in chroot
Product: Red Hat Enterprise Linux 7
Classification: Red Hat
Component: anaconda (Show other bugs)
Unspecified Unspecified
unspecified Severity unspecified
: rc
: ---
Assigned To: Anaconda Maintenance Team
Release Test Team
: Reopened
Depends On:
Blocks: 1279932
  Show dependency treegraph
Reported: 2015-10-14 05:34 EDT by David Kupka
Modified: 2015-11-11 02:54 EST (History)
3 users (show)

See Also:
Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
Last Closed: 2015-10-16 13:37:51 EDT
Type: Bug
Regression: ---
Mount Type: ---
Documentation: ---
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---

Attachments (Terms of Use)
Reproducing kickstart file. (1.10 KB, text/plain)
2015-10-14 05:35 EDT, David Kupka
no flags Details

  None (edit)
Description David Kupka 2015-10-14 05:34:18 EDT
Description of problem:
DBus daemon is by default listening on unix socket placed in /run/dbus/system_bus_socket. Since /run is mount.bind into chroot environment it is possible to connect to DBus but this connection is handled by DBus daemon running outside chroot enviroment.
The outside running DBus daemon is not aware of configuration in chroot environment and therefore does not permit actions that should be allowed according to configuration in chroot environment.
The preferred solution would be to start separate instance of DBus daemon inside chroot environment

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

How reproducible:

Steps to Reproduce:
1. Install RHEL 7.2 with attached kickstart file

Actual results:
Certmonger fails to connect to D-Bus and is therefore unreachable.

Expected results:
Certmonger connects to D-Bus and can be reached over D-Bus by (not only) getcert utility.

Additional info:
This is general Anaconda issue (not RHEL 7.2 specific). I hit it on Fedora 22 too and believe it's present on other versions as well.
Comment 2 David Kupka 2015-10-14 05:35 EDT
Created attachment 1082761 [details]
Reproducing kickstart file.
Comment 3 Brian Lane 2015-10-15 13:39:14 EDT
You cannot run things that expect to talk to DBus from %post. The chroot is not a running system until it has been rebooted, and trying to treat it as such is going to end up causing no end of problems.
Comment 4 RHEL Product and Program Management 2015-10-15 13:45:59 EDT
Development Management has reviewed and declined this request.
You may appeal this decision by reopening this request.
Comment 5 David Kupka 2015-10-16 07:05:46 EDT
Ok. Then why is DBus available in chroot? Is there a chance /run will be not mount.bind? The problem is DBus is available but behaves other than expected.
Comment 6 Brian Lane 2015-10-16 13:37:51 EDT
That's just a side-effect of how the chroot needs to be setup for other things.
Comment 7 Vratislav Podzimek 2015-10-19 12:59:52 EDT
Bind-mounting /run (together with /sys) to /mnt/sysimage (the installed system) was added because of dracut and creation of hostonly initrd.img as documented in the bug #922988. I'm not sure what we could do here. We could probably bind-mount only some things from /run to /mnt/sysimage/run, but it'd be quite hard to identify which ones are needed/useful.

Note You need to log in before you can comment on or make changes to this bug.