lkml.org 
[lkml]   [2001]   [Nov]   [5]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
SubjectRe: [Q] pivot_root and initrd
From
Date
kaih@khms.westfalen.de (Kai Henningsen) writes:

|> ebrower@usa.net (Eric) wrote on 17.10.01 in <3BCDCF1D.6030202@usa.net>:
|>
|> > You are simply doing the following, I assume with success:
|>
|> > exec /sbin/init "$@"
|>
|> > whereas I am doing something like the following:
|>
|> > exec chroot . sh -c 'umount $OLDROOT; exec -a init.new /sbin/init
|> > $INITARGS' <dev/console >dev/console 2>&1
|>
|> > I am mystified that the call to 'exec /sbin/init' works if you are using
|> > the standard (you mention "based on RedHat7.1" util-linux") /sbin/init
|> > proggie, and that a standard RH7.1 initscripts would not complain when
|> > the root filesystem is already mounted r/w.
|>
|> It works because the PID is 1, of course.
|>
|> /linuxrc (or however you call it) runs with PID=1, so when it exec's /sbin/
|> init, the PID is still 1.
|>
|> OTOH, you have chroot run a shell as a child, which therefore does *not*
|> have PID=1.

linuxrc does 'exec chroot', chroot does 'exec sh', sh does 'exec init'.
Thus init should end up with the same pid as linuxrc.

Andreas.

--
Andreas Schwab "And now for something
Andreas.Schwab@suse.de completely different."
SuSE Labs, SuSE GmbH, Schanzäckerstr. 10, D-90443 Nürnberg
Key fingerprint = 58CA 54C7 6D53 942B 1756 01D3 44D5 214B 8276 4ED5
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/

\
 
 \ /
  Last update: 2005-03-22 13:18    [from the cache]
©2003-2011 Jasper Spaans