Subject: Re: PATCH: init(8) - multiuser under chroot
To: Daniel Carosone <dan@geek.com.au>
From: Jachym Holecek <freza@liberouter.org>
List: tech-userlevel
Date: 05/31/2005 11:05:52
> On Mon, May 30, 2005 at 12:28:38PM -0700, Simon J. Gerraty wrote:
> > Not sure I like this bit though. Once etc/rc finishes successfully,
> > I make init chroot itself, keeps things nice and simple.
>
> Init chroot's itself before starting the 'real' rc, opening tty's,
> etc? I think I prefer this simplicity, too.
That's an obvious and failsafe approach. The invariant of "single user
always on real root" prove _very_ useful while testing at the least
though. Further, a few "if (did_multiuser_chroot)" conditionals give you
the ability to do multiple chroot sessions. That seemed like TRT to me,
but I admit I can't think of a terribly practical scenario off the top
of my head.
> It's a pity that there's no way to unmount the real root md, but
> there's not really much point unless/until we could recover the memory
> used once it was unmounted. If that ever becomes possible, we can
> revisit this aspect then.
Would be a nice feature...
> > As you found, going back and forth b/w single/multi-user doesn't work well
> > so I don't even pretend that it will work. Boot single user or multi-user
> > end of story.
It was just a couple of minor "surprises" here and there. In any case,
I'm going to have a closer look as soon as I find a free timeslot.
> Yeah, it's not like any changes you make at single-user in the md root
> are going to be permanent.
Note that the scheme isn't md-specfic in any way -- you can boot off an
USB flash disk and migrate to a cgd@wd0 multi-user (ch)root.
Regards,
-- Jachym Holecek