summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorRob Landley2005-10-27 22:55:50 +0000
committerRob Landley2005-10-27 22:55:50 +0000
commit0f34a821ab99e4936c7aa4974f58784442172211 (patch)
tree1341f988aa02110b3a997edc52e54bcc27ea1000 /include
parent2454ebd85ddbbdc0971e9b848032f66e23245ebe (diff)
downloadbusybox-0f34a821ab99e4936c7aa4974f58784442172211.zip
busybox-0f34a821ab99e4936c7aa4974f58784442172211.tar.gz
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 'include')
-rw-r--r--include/applets.h3
-rw-r--r--include/usage.h6
2 files changed, 9 insertions, 0 deletions
diff --git a/include/applets.h b/include/applets.h
index a814ce1..883e559 100644
--- a/include/applets.h
+++ b/include/applets.h
@@ -625,6 +625,9 @@
#ifdef CONFIG_SWAPONOFF
APPLET(swapon, swap_on_off_main, _BB_DIR_SBIN, _BB_SUID_NEVER)
#endif
+#ifdef CONFIG_SWITCH_ROOT
+ APPLET(switch_root, switch_root_main, _BB_DIR_SBIN, _BB_SUID_NEVER)
+#endif
#ifdef CONFIG_SYNC
APPLET(sync, sync_main, _BB_DIR_BIN, _BB_SUID_NEVER)
#endif
diff --git a/include/usage.h b/include/usage.h
index bef6a4d..69c50b9 100644
--- a/include/usage.h
+++ b/include/usage.h
@@ -2735,6 +2735,12 @@
"Options:\n" \
"\t-a\tStart swapping on all swap devices"
+#define switch_root_trivial_usage \
+ "NEW_ROOT NEW_INIT [ARGUMENTS_TO_INIT]"
+#define switch_root_full_usage \
+ "Use from PID 1 under initramfs to free initramfs, chroot to NEW_ROOT,\n" \
+ "and exec NEW_INIT.\n"
+
#define sync_trivial_usage \
""
#define sync_full_usage \