[OpenWrt-Devel] [PATCH] [boot] /init: allow easier customisation of ramfs boot.

Stephen Parry sgparry at mainscreen.com
Sat Aug 23 16:46:20 EDT 2014


/init is the first pid 1 process in an initramfs environment. This fix adds
lines to check for the existence of /bin/ramfsinit or /sbin/ramfsinit and exec
if present. This allows packages to switch root early in the boot process. This
will help support booting or kexecing from external storage and go some way
toward fixing ticket #17465.

Signed-off-by: Stephen Parry <sgparry at mainscreen.com>
---
 target/linux/generic/base-files/init | 8 ++++++++
 1 file changed, 8 insertions(+)

diff --git a/target/linux/generic/base-files/init b/target/linux/generic/base-files/init
index 514be57..cae515d 100755
--- a/target/linux/generic/base-files/init
+++ b/target/linux/generic/base-files/init
@@ -1,4 +1,12 @@
 #!/bin/sh
 # Copyright (C) 2006 OpenWrt.org
 export INITRAMFS=1
+
+if [ -e /bin/ramfsinit ]; then
+	exec /bin/ramfsinit
+fi
+if [ -e /sbin/ramfsinit ]; then
+	exec /sbin/ramfsinit
+fi
+
 exec /sbin/init
-- 
1.9.1
_______________________________________________
openwrt-devel mailing list
openwrt-devel at lists.openwrt.org
https://lists.openwrt.org/cgi-bin/mailman/listinfo/openwrt-devel



More information about the openwrt-devel mailing list