Bug 1673685
Summary: | When nfs-utils is installed in container image, running systemd in the container makes the container unstoppable | ||
---|---|---|---|
Product: | Red Hat Enterprise Linux 8 | Reporter: | Steve Dickson <steved> |
Component: | nfs-utils | Assignee: | Steve Dickson <steved> |
Status: | CLOSED CURRENTRELEASE | QA Contact: | Yongcheng Yang <yoyang> |
Severity: | unspecified | Docs Contact: | |
Priority: | unspecified | ||
Version: | 8.0 | CC: | bfields, extras-qa, jlayton, jpazdziora, jwboyer, sgallagh, steved, xzhou, yoyang |
Target Milestone: | rc | Keywords: | Regression |
Target Release: | 8.0 | ||
Hardware: | Unspecified | ||
OS: | Unspecified | ||
Whiteboard: | |||
Fixed In Version: | nfs-utils-2.3.3-13.el8 | Doc Type: | If docs needed, set a value |
Doc Text: | Story Points: | --- | |
Clone Of: | 1668836 | Environment: | |
Last Closed: | 2019-06-14 01:11:13 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: | 1668836 | ||
Bug Blocks: | 1639432 |
Description
Steve Dickson
2019-02-07 19:00:30 UTC
updating wit the new build which now always enable nfs-convert (In reply to Stephen Gallagher from comment #16) > (In reply to Steve Dickson from comment #10) > > (In reply to Stephen Gallagher from comment #6) > > > Steve, using `systemctl enable` in %post is *FORBIDDEN* in Fedora and RHEL. > > > As I told you in email, the correct way to have this enabled by default is > > > to have it added to the systemd presets in the `redhat-release` package. OR > > > you can stop having it be a reverse dependency (RequiredBy=) and switch the > > > units for the other services to use `Requires=nfs-convert.service`, which > > > means that they'll start it without needing to have it disabled by default. > > > > > > But the approach you took is wrong and needs to be fixed. Part of the reason > > > for using the presets here is so that we have a single place to look and see > > > what services are started by default. This breaks that. > > > > The approach I took is the approach you designed.... I was just making it > > work. > > > > I specifically mean with how you are enabling the service. /bin/systemctl enable nfs-convert >/dev/null 2>&1 || : > We have rules against using scriptlets like this for genuine reasons, not because we like > bureaucracy. The most obvious one in this case is so that we as an > organization can figure out what will be running on your system. This is a configuration conversion that needs to happen... It is not like the service is started rouge daemon taking over the system... The service is ensuring the NFS daemon are staring up the correct parameters... > The second one is that scriptlets do not play well with container base image creation, > OSTree image creation and Weldr/Composer. In some of these cases, RPMs are > installed with the --no-scripts flag, so they WILL NOT HAVE THIS RUNNING. > That is why I am telling you that it should either be in the presets or > change the dependency link. It turns out that NFS does not play well with containers... With the current version, nfs-utils will work well with the OSTree image creation which is a good start... With the people that use the --no-scripts flag, which is not clear why they would do that... but Yes... in 8.0 that will probably not work... but some we can work on down the road. TBL... The current version fixes this blocker... > > > With the current design the service had to be enabled for it to work. > > Yes, I realized adding RequiredBy= would be another approach but > > I thought risk of changing 8 service files verses the risk of > > adding one line to spec file was... was a no brainier > > > > > And it was a "no brainer" because you probably didn't know about the cases I > describe above. Is the --no-scripts flag some thing we test? In a normal install RHEL8 cases this solution will work. > > > > Yes, I knowing did a "FORBIDDEN" thing because 1) %systemd_post > > do not enable things, 2) I knew the service would *definitely* get enable. > > > > > Except when it doesn't and is hard to figure out why. Hard to figure out? If something fails during an installation of a package... it is pretty easy to figure out why... > > > > Stephen, If you have a problem with the way I did things, open > > up another bz. Do not let some Bureaucracy nonsense get in the > > way of making things work. We will deal with it in 8.1 > > > > As far as I'm concern, the problem has been solved... > > And as far as I'm concerned, you're adding more potential problems because > you are making a short-sighted decision. "short sighted" for a "potential problems"?? That is a reach IMHO... In the waning hours of a mayor release... I'm doing what needs to happen to make a well used technology to work in an initial release. I do not think enabling a internal service to insure a configuration is correct, of a well used technology, should stop block a major RHEL initial release Have verified in nfs-utils-2.3.3-13.el8 and go ahead to clear the needinfo flag now. (In reply to Steve Dickson from comment #0) > ... > $ docker rm -f nfs-convert > Error response from daemon: Driver overlay2 failed to remove root filesystem > b3a8bcd328f59b49954e6c8a294d6643206f6b30232de737c88b31c6a3251b4a: remove > /var/lib/docker/overlay2/ > f882e8b503c40a81f94f5d379bcbb375e891500f8a8ad5643f28e690ceb5fe04/diff/etc/ > sysconfig/nfs: operation not permitted > The deprecated config file /etc/sysconfig/nfs won't be created now. As a result, the container image should be able to be removed. |