diff options
author | Rob Landley <rob@landley.net> | 2005-10-27 22:55:50 +0000 |
---|---|---|
committer | Rob Landley <rob@landley.net> | 2005-10-27 22:55:50 +0000 |
commit | 0f34a821ab99e4936c7aa4974f58784442172211 (patch) | |
tree | 1341f988aa02110b3a997edc52e54bcc27ea1000 /util-linux/Config.in | |
parent | 2454ebd85ddbbdc0971e9b848032f66e23245ebe (diff) | |
download | busybox-w32-0f34a821ab99e4936c7aa4974f58784442172211.tar.gz busybox-w32-0f34a821ab99e4936c7aa4974f58784442172211.tar.bz2 busybox-w32-0f34a821ab99e4936c7aa4974f58784442172211.zip |
Add a switch_root utility (like kconfig's utils/run_init.c, although not
actuall using any of that code). This is needed because pivot_root doesn't
work right under initramfs. (See the menuconfig help.)
Diffstat (limited to 'util-linux/Config.in')
-rw-r--r-- | util-linux/Config.in | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/util-linux/Config.in b/util-linux/Config.in index dc6d8fdad..fe71dac2c 100644 --- a/util-linux/Config.in +++ b/util-linux/Config.in | |||
@@ -288,6 +288,28 @@ config CONFIG_PIVOT_ROOT | |||
288 | of wild and crazy things with your Linux system and is far more | 288 | of wild and crazy things with your Linux system and is far more |
289 | powerful than 'chroot'. | 289 | powerful than 'chroot'. |
290 | 290 | ||
291 | Note: This is for initrd in linux 2.4. Under initramfs (introduced | ||
292 | in linux 2.6) use switch_root instead. | ||
293 | |||
294 | config CONFIG_SWITCH_ROOT | ||
295 | bool "switch_root" | ||
296 | default n | ||
297 | help | ||
298 | The switch_root utility is used from initramfs to select a new | ||
299 | root device. Under initramfs, you have to use this instead of | ||
300 | pivot_root. (Stop reading here if you don't care why.) | ||
301 | |||
302 | Booting with initramfs extracts a gzipped cpio archive into rootfs | ||
303 | (which is a variant of ramfs/tmpfs). Because rootfs can't be moved | ||
304 | or unmounted*, pivot_root will not work from initramfs. Instead, | ||
305 | switch_root deletes everything out of rootfs (including itself), | ||
306 | does a mount --move that overmounts rootfs with the new root, and | ||
307 | then execs the specified init program. | ||
308 | |||
309 | * Because the Linux kernel uses rootfs internally as the starting | ||
310 | and ending point for searching through the kernel's doubly linked | ||
311 | list of active mount points. That's why. | ||
312 | |||
291 | config CONFIG_RDATE | 313 | config CONFIG_RDATE |
292 | bool "rdate" | 314 | bool "rdate" |
293 | default n | 315 | default n |