On May 14, 2006, at 20:08, Rob Landley wrote:
On Saturday 13 May 2006 3:24 am, Kyle Moffett wrote:
/
/var
/var/sub
/var/sub2
/var/sub2/sub
/var/sub2/sub2
The recursion ends there. Basically with the first bind mount you
attach the same instance of tmpfs to /tmp and /var, then you move
the tmpfs from /tmp to the "/sub2" directory in the "/var" tmpfs
_mountpoint_. It's kind of confusing behavior; but the directory
tree and the mount tree are basically kind of separate entities in
a sense.
I can CD into them endlessly, and both "ls -lR" and "find ." report
cycles in the tree, which surprised me that they had a specific
error message for that, actually. Good enough for me. :)
Odd, I'm unable to replicate that behavior here. If I run "ls /var/
sub2/sub2" I don't get any entries. Find and ls -lR have error
messages of that because it can occasionally be triggered with
symlinks and such.
And I'm not _complaining_ about it. Just fiddling around with fun
stuff. If I get really bored I'll figure a way to split the tree
so there are two completely unconnected mount trees in different
processes. (Get a private namespace that's chrooted into
something that somebody else does a umount -l on from their space.
Or without using umount -l, just have two processes chroot into
other mount points which should theoretically garbage collect the
old root if no processes still references it, which presumably
means one of the processes is init...)
Well, actually, it isn't that hard. Just run something like this:
#! /bin/sh
mkdir /a
mkdir /b
mount -t tmpfs tmpfs /a
mount -t tmpfs tmpfs /b
mkdir /a/old
mkdir /b/old
tool_to_fork_in_new_namespace sh -c "pivot_root /a /a/old && umount -
l /a/old && read"
pivot_root /b /b/old && umount -l /b/old && read
All you need to write is tool_to_fork_in_new_namespace which does
clone(CLONE_NEWNS) followed by exec().
Cheers,
Kyle Moffett
--
Simple things should be simple and complex things should be possible
-- Alan Kay
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
[Index of Archives]
[Kernel Newbies]
[Netfilter]
[Bugtraq]
[Photo]
[Stuff]
[Gimp]
[Yosemite News]
[MIPS Linux]
[ARM Linux]
[Linux Security]
[Linux RAID]
[Video 4 Linux]
[Linux for the blind]
[Linux Resources]