|From:||Jamie Lokier <jamie-AT-shareable.org>|
|To:||Pavel Machek <pavel-AT-ucw.cz>|
|Subject:||Re: [PATCH] private mounts|
|Date:||Tue, 26 Apr 2005 15:07:15 +0100|
|Cc:||Al Viro <viro-AT-parcelfarce.linux.theplanet.co.uk>, Miklos Szeredi <miklos-AT-szeredi.hu>, hch-AT-infradead.org, linux-fsdevel-AT-vger.kernel.org, linux-kernel-AT-vger.kernel.org, akpm-AT-osdl.org|
Pavel Machek wrote: > > > Actually, after you add right mount xyzzy /foo lines into .profile, > > > you can just . ~/.profile ;-). > > > > Is there a mount command that can do that? We're talking about > > private mounts - invisible to other namespaces, which includes the > > other shells. > > > > If there was a /proc/NNN/namespace, that would do the trick :) > > Sounds like the solution, then. I do not think Al Viro is going to > kill you for /proc/NNN/namespace... Looking closer, I think we already have it. It's called /proc/NNN/root. Does chroot into /proc/NNN/root cause the chroot'ing process to adopt the namespace of NNN? Looking at the code, I think it does. Furthermore, I think a daemon can acquire file descriptors for multiple namespaces already, by open("/") and passing descriptors between processes. And the chroot can be done using /proc/self/fd/N after receiving a descriptor. This is because file descriptors, and current->fs->pwd and current->fs->root, record the vfsmnt as well as the dentry that they opened. So no new system calls are needed. A daemon to hand out per-user namespaces (or any other policy) can be written using existing kernels, and those namespaces can be joined using chroot. That's the theory anyway. It's always possible I misread the code (as I don't use namespaces and don't have tools handy to try them). -- Jamie - To unsubscribe from this list: send the line "unsubscribe linux-fsdevel" in the body of a message to email@example.com More majordomo info at http://vger.kernel.org/majordomo-info.html
Copyright © 2005, Eklektix, Inc.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds