Welcome to mirror list, hosted at ThFree Co, Russian Federation.

run-init.c « klibc-utils - git.busybox.net/busybox.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
blob: 5eadd9fc0b9c38fae3a695c09e8292727e1840db (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
/*
 * run-init implementation for busybox
 *
 * Copyright (c) 2017 Denys Vlasenko <vda.linux@gmail.com>
 *
 * Licensed under GPLv2, see file LICENSE in this source tree.
 */
//config:config RUN_INIT
//config:	bool "run-init (8 kb)"
//config:	default y
//config:	help
//config:	The run-init utility is used from initramfs to select a new
//config:	root device. Under initramfs, you have to use this instead of
//config:	pivot_root.
//config:
//config:	Booting with initramfs extracts a gzipped cpio archive into rootfs
//config:	(which is a variant of ramfs/tmpfs). Because rootfs can't be moved
//config:	or unmounted, pivot_root will not work from initramfs. Instead,
//config:	run-init deletes everything out of rootfs (including itself),
//config:	does a mount --move that overmounts rootfs with the new root, and
//config:	then execs the specified init program.
//config:
//config:	util-linux has a similar tool, switch-root.
//config:	run-init differs by also having a "-d CAPS_TO_DROP" option.

/* applet and kbuild hooks are in switch_root.c */