From: Eric <ebrower@usa.net>
To: linux-kernel@vger.kernel.org
Subject: Re: [Q] pivot_root and initrd
Date: Wed, 17 Oct 2001 11:34:05 -0700 [thread overview]
Message-ID: <3BCDCF1D.6030202@usa.net> (raw)
In-Reply-To: <p05100300b7f2b3b94b17@[10.128.7.49]>
>>
>> Works great. I use it in my SuperRescue CD for example; you can
>> there check out a complete, working example.
>>
>> ftp://ftp.kernel.org/pub/dist/superresuce/
>>
>> -hpa
hpa,
Thanks for the example. The documentation for pivot_root must be just
plain lousy-- I thought I'd go "by the book" with the following
admonitions from the manpage:
1) cd to new_root prior to calling pivot_root
2) call pivot_root with relative new_root (.) and put_old
3) call 'chroot' immediately after pivot and redirect stdin/out
You are simply doing the following, I assume with success:
[ ... ]
# Switch roots and run init
cd /ram
pivot_root /ram /ram/initrd
exec /sbin/init "$@"
whereas I am doing something like the following:
[ ... ]
mount -o ro $ROOTDEV $NEWROOT
cd $NEWROOT
pivot_root . $OLDROOT
# export for visibility to exec'ed shell
export INITARGS="$@"
export OLDROOT
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.
I would also guess that you are susceptible to the kernel's change_root
call if your /sbin/init terminates. I'll have to play with the disk a bit.
E
next parent reply other threads:[~2001-10-17 18:38 UTC|newest]
Thread overview: 20+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <p05100300b7f2b3b94b17@[10.128.7.49]>
2001-10-17 18:34 ` Eric [this message]
2001-10-17 21:17 ` [Q] pivot_root and initrd H. Peter Anvin
2001-10-27 12:45 ` Kai Henningsen
2001-11-05 21:52 ` Andreas Schwab
[not found] <p05100304b80cbe9cf127@[10.128.7.49]>
2001-11-06 0:05 ` Eric
[not found] <p05100328b7fb8dcb9473@[207.213.214.37]>
2001-10-23 21:54 ` Eric
2001-10-24 0:20 ` Werner Almesberger
2001-10-23 17:42 Eric
2001-10-23 18:14 ` H. Peter Anvin
2001-10-23 19:54 ` bill davidsen
2001-10-23 19:59 ` Rik van Riel
2001-10-23 20:21 ` bill davidsen
2001-10-23 21:00 ` H. Peter Anvin
2001-10-23 20:37 ` Werner Almesberger
2001-10-23 20:46 ` Richard B. Johnson
2001-10-23 20:52 ` H. Peter Anvin
2001-10-23 21:05 ` Richard B. Johnson
2001-10-23 21:06 ` H. Peter Anvin
-- strict thread matches above, loose matches on Subject: below --
2001-10-17 2:16 Eric
2001-10-17 3:30 ` H. Peter Anvin
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=3BCDCF1D.6030202@usa.net \
--to=ebrower@usa.net \
--cc=linux-kernel@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).