When copying files from or to a container we so far opened the host side fd first, then entered the container (specifically, joined it's mount namespace) in a forked off child process, and opened the other side there, followed by the (potentially slow) copying from inside the container mount namespace. This commit changes this so that we rejoin the host mount namespace before doing the copying routine. This is relevant, so that we can rely on /proc/self/fd/… to work, which is not the case otherwise, as we'll see /proc/ from a pidns that is not our own, in wich case /proc/self/fd/… is refused. By moving back to the host mount namespace our own pidns and the pidns the /proc/ mount belongs to will be in sync again, and all is good. This is in particular preparation for the next commit, that makes the copy routine strictly depending on /proc/ being accessible and working.
System and Service Manager
Details
Most documentation is available on systemd's web site.
Assorted, older, general information about systemd can be found in the systemd Wiki.
Information about build requirements is provided in the README file.
Consult our NEWS file for information about what's new in the most recent systemd versions.
Please see the Code Map for information about this repository's layout and content.
Please see the Hacking guide for information on how to hack on systemd and test your modifications.
Please see our Contribution Guidelines for more information about filing GitHub Issues and posting GitHub Pull Requests.
When preparing patches for systemd, please follow our Coding Style Guidelines.
If you are looking for support, please contact our mailing list, join our IRC channel #systemd on libera.chat or Matrix channel
Stable branches with backported patches are available in the stable repo.
We have a security bug bounty program sponsored by the Sovereign Tech Fund hosted on YesWeHack