Hello! As discussed on IRC, my initial advice about MS_PRIVATE was misguided. The real issue is the “rm_rf (new_root);” call, which removes the root directory and thus leaves child processes (the daemon) with nothing. The attached patch adds a test loosely based on yours and a fix for that. The fix (for the “userns” engine) is to make NEW_ROOT a tmpfs, such that upon completion, all we need to do is to unmount it and remove it; it lives on as the root file system of child processes. In the “fakechroot” case, we have to leave NEW_ROOT behind, which is not great but acceptable (it’s user-owned, #o700, and it’s under /tmp). The test only checks the “userns” engine. If you confirm that it works for you and looks reasonable, we can apply it. Thanks, Ludo’.