-
Notifications
You must be signed in to change notification settings - Fork 2.6k
podman run fails if --tty
or -t
is used and /tmp
is mapped to the podman machine
#18230
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
Comments
I am testing further and the issue does not seem to be related to my funky folders but to:
|
--tty
or -t
is used--tty
or -t
is used and /tmp
is mapped to the machine
I edited the description to remove the mapping that are not relevant. |
--tty
or -t
is used and /tmp
is mapped to the machine--tty
or -t
is used and /tmp
is mapped to the podman machine
When you trigger this error please run |
I did not see anything obvious but here is a dump: https://gist.github.com/chevdor/48913984195ec6962719c22765dd1b2f |
Yeah doesn't show anything useful to me. @mheon Any idea how |
Could it be that tty needs I am personally using If that's the case, an option would be to mount the machine Arguably the user could also use |
If I had to guess, it would be related to logging - trying a container with |
Let me try. I create a new machine now that I have one that works :)
Arf. Hitting another bug, possibly in I can reproduce the issue with |
Could that bring ideas? It is the
|
Now I can confirm that
|
I suggest NOT using |
As the reporter shows it only fails with Following the code in conmon I found this: get_tmp_dir defaults to Does 9p filesystem mount support sockets? I think the socket call is failing but then I still do not understand why there is no error message from conmon in the journal. |
Are you using The latter probably indicates nothing either way. if the former works, and the two behave differently, that would suggest that we are mapping just the symlink over 9pfs. And in that case we are creating a socket inside the VM at
https://github.com/torvalds/linux/blob/2d1bcbc6cd703e64caf8df314e3669b4786e008a/fs/9p/vfs_inode.c#L54-L55 suggests that it can, depending on options (and server support?). |
I use Your question brings a nice idea that would solve one other of my problems. I would love being able to use:
instead of my current:
But the problem described in this issue remains also when mapping |
Reproduced. @Luap99 You were right, the failure is
This child process is reporting the error. But that report is not visible because https://github.com/containers/conmon/blob/08c34bda8c75a37f153dfbd63399d22050551053/src/conmon.c#L131 has redirected stderr to I’m sure there is some strategy for conmon error handling, so at this point I’d prefer t let conmon experts weigh in. Regardless, I’d say that sharing I don’t know how much effort it makes sense to spend on supporting this. |
the destination machine mount overwrote /tmp. Here I have added a sanity check. I also moved the volume parsing and check earlier in the init function so that one does not have to endure the decompression and clean up of the machine image for cli parsing. Fixes: containers#18230 Signed-off-by: Brent Baude <[email protected]>
the destination machine mount overwrote /tmp. Here I have added a sanity check. I also moved the volume parsing and check earlier in the init function so that one does not have to endure the decompression and clean up of the machine image for cli parsing. Fixes: containers#18230 Signed-off-by: Brent Baude <[email protected]>
When certain directories, like /tmp, get mounted over, FCOS/Linux can act in unexpected ways. Added a sanity check for a list of directories think might be impacted by this. Also, moved the volume parsing earlier in the init process so we can catch problems before the expensive decompression of machine images. The following destinations are forbidden for volumes: `/bin`, `/boot`, `/dev`, `/etc`, `/home`, `/proc`, `/root`, `/run`, `/sbin`, `/sys`, `/tmp`, `/usr`, and `/var`. Subdirectories Fixes: containers#18230 Signed-off-by: Brent Baude <[email protected]>
When certain directories, like /tmp, get mounted over, FCOS/Linux can act in unexpected ways. Added a sanity check for a list of directories think might be impacted by this. Also, moved the volume parsing earlier in the init process so we can catch problems before the expensive decompression of machine images. The following destinations are forbidden for volumes: `/bin`, `/boot`, `/dev`, `/etc`, `/home`, `/proc`, `/root`, `/run`, `/sbin`, `/sys`, `/tmp`, `/usr`, and `/var`. Subdirectories Fixes: containers#18230 Signed-off-by: Brent Baude <[email protected]>
When certain directories, like /tmp, get mounted over, FCOS/Linux can act in unexpected ways. Added a sanity check for a list of directories think might be impacted by this. Also, moved the volume parsing earlier in the init process so we can catch problems before the expensive decompression of machine images. The following destinations are forbidden for volumes: `/bin`, `/boot`, `/dev`, `/etc`, `/home`, `/proc`, `/root`, `/run`, `/sbin`, `/sys`, `/tmp`, `/usr`, and `/var`. Subdirectories Fixes: containers#18230 Signed-off-by: Brent Baude <[email protected]>
When certain directories, like /tmp, get mounted over, FCOS/Linux can act in unexpected ways. Added a sanity check for a list of directories think might be impacted by this. Also, moved the volume parsing earlier in the init process so we can catch problems before the expensive decompression of machine images. The following destinations are forbidden for volumes: `/bin`, `/boot`, `/dev`, `/etc`, `/home`, `/proc`, `/root`, `/run`, `/sbin`, `/sys`, `/tmp`, `/usr`, and `/var`. Subdirectories Fixes: containers#18230 Signed-off-by: Brent Baude <[email protected]>
When certain directories, like /tmp, get mounted over, FCOS/Linux can act in unexpected ways. Added a sanity check for a list of directories think might be impacted by this. Also, moved the volume parsing earlier in the init process so we can catch problems before the expensive decompression of machine images. The following destinations are forbidden for volumes: `/bin`, `/boot`, `/dev`, `/etc`, `/home`, `/proc`, `/root`, `/run`, `/sbin`, `/sys`, `/tmp`, `/usr`, and `/var`. Subdirectories Fixes: containers#18230 Signed-off-by: Brent Baude <[email protected]>
When certain directories, like /tmp, get mounted over, FCOS/Linux can act in unexpected ways. Added a sanity check for a list of directories think might be impacted by this. Also, moved the volume parsing earlier in the init process so we can catch problems before the expensive decompression of machine images. The following destinations are forbidden for volumes: `/bin`, `/boot`, `/dev`, `/etc`, `/home`, `/proc`, `/root`, `/run`, `/sbin`, `/sys`, `/tmp`, `/usr`, and `/var`. Subdirectories Fixes: containers#18230 Signed-off-by: Brent Baude <[email protected]>
Uh oh!
There was an error while loading. Please reload this page.
Issue Description
After reporting this issue, I tested with a default podman machine. In that case, the issue described below does NOT occur.
I do run into the issue when using a freshly created machine close to the default machine but with an extra mapping to
/tmp
:Mapping
/private/tmp
does work fine though.what works
what does not work
Steps to reproduce the issue
or
Describe the results you received
See description
Describe the results you expected
Using
--tty
or-t
works without error.podman info output
Podman in a container
No
Privileged Or Rootless
Tried both, appears not relevant.
Upstream Latest Release
Yes
Additional environment details
Additional environment details
Additional information
Additional information like issue happens only occasionally or issue happens with a particular architecture or on a particular setting
The text was updated successfully, but these errors were encountered: