-
Notifications
You must be signed in to change notification settings - Fork 2.4k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Downgrade the default mount flag for bind mounts from 'rw' to 'ro' if the source is mounted read-only #4061
Comments
@debarshiray as a quick test, can you try this? (Assuming you've a
|
I am puzzled why I am not hitting this on legacy Workstation 29. I cannot spot any delta in the RPMs for F30 and F29 that can justify this. |
|
Aha, I am getting the
However, for some reason |
Why are these warnings showing up? The default way of running podman is not supposed to show warnings? Basically podman is going through the libpod.conf file looking for the OCI Runtimes and printing out that a runtime is not installed, even if it is not using the runtime. Usually no one sees these messages unless you are running with a --log-level=debug. At least this is the way I believe it should be working. @mheon WDYT? |
Yeah I'm really curious here - either the default logging level changed (I don't remember merging any PRs to do it, but maybe it was Go toolchain stuff?), or something weird is going on. |
I think part of the solution here, though, is to make removing conmon files an unconditional part of |
#4065 may help here - I think a lot of the problem is lingering Conmon files. I'm not sure why they're lingering, though. Cleanup processes might not be running? |
#4065 now broke starting containers on my Workstation 29 laptop, albeit in an entirely different way.
|
@giuseppe PTAL |
We've been seeing a lot of issues (ref: containers#4061, but there are others) where Podman hiccups on trying to start a container, because some temporary files have been retained and Conmon will not overwrite them. If we're calling start() we can safely assume that we really want those files gone so the container starts without error, so invoke the cleanup routine. It's relatively cheap (four file removes) so it shouldn't hurt us that much. Also contains a small simplification to the removeConmonFiles logic - we don't need to stat-then-remove when ignoring ENOENT is fine. Signed-off-by: Matthew Heon <[email protected]>
With the updated #4065, my Workstation 29 is back to being as it used to be. However,
As before, the first failed
|
Alright, so we've gotten further than before, but now |
Error message, rather |
Oh, wait, I see it now. EPERM mounting a directory in the container. Hm. |
Let's retitle the issue to focus on the |
Isn't it peculiar that the first failed |
I think we are using runc here, not crun. |
That is 100% a runc error |
EPERM mounting in |
Yes, this is definitely using |
Yes, it was added recently in Toolbox 0.0.14. This seems like something that could totally be due to the way |
On Silverblue 30, I have:
It seems that I can mount it |
Anyway, if you think that I am just surprised because @cgwalters has been doing this for a while in his prototype and I believe he uses Silverblue. |
Ummm. So it works without rslave? Interesting. |
Does it work if you switch to crun? |
Just to make sure I understand what you are thinking.
You would have wanted /usr1 to be mounted |
@rhatdan That particular example is a very good, because on an ostree-based system the /usr mount is read-only for a reason, its full of hardlinks into the ostree repo, and once you start changing those all sorts of things can break in mysterious ways. |
Yes. That's what I meant in #4061 (comment) In fact, the
You will have to explicitly specify the |
@vrothberg Could you fix this, basically if the file system is mounted read/only then the volume mounted should also be read/only. @debarshiray Does this only matter if this is a mount point? Or would the same issue arise if you did $ podman run --rm --volume /usr/lib:/run/host/usr/lib registry.fedoraproject.org/fedora:30 mount | grep host |
There's a somewhat related issue, but quite the same, in |
This issue had no activity for 30 days. In the absence of activity or the "do-not-close" label, the issue will be automatically closed within 7 days. |
Did we ever get a runc issue filed for this one? |
I didn't notice this was assigned to me, apologies. Given I'll be on the road for a while, I unassigned myself. |
@giuseppe crun is fixed, not sure abour runc. |
A friendly reminder that this issue had no activity for 30 days. |
I am going to close this, as I think it is fixed. |
Is this a BUG REPORT or FEATURE REQUEST? (leave only one on its own line)
/kind bug
Description
I updated to the new Podman 1.6.0 build for Fedora 30, rebooted, wiped out
~/.local/share/containers
and~/.config/containers
, rebooted again, and created a new Toolbox container. The multiple reboots were to ensure a clean slate.However it refuses to start. It looks Podman is somehow trying to use
crun
as the OCI runtime, even though this is a Cgroups v1 system, and of course there's nocrun
installed.podman start
when called bytoolbox enter
fails as:A subsequent attempt at calling
podman start
directly fails as:The second
podman start
puts this in the journal:The auto-created
~/.config/containers/libpod.conf
looks like:Additional information you deem important (e.g. issue happens only occasionally):
100% reliably reproducible.
Output of
podman version
:Output of
podman info --debug
:Package info (e.g. output of
rpm -q podman
orapt list podman
):Additional environment details (AWS, VirtualBox, physical, etc.):
This is happening on Silverblue 30, but not on Workstation 29.
The text was updated successfully, but these errors were encountered: