diff options
author | Khem Raj <raj.khem@gmail.com> | 2016-01-22 20:49:09 +0000 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2016-01-24 10:55:44 +0000 |
commit | 75cb4fe38fade382450c5f6f35d5dcf55962143e (patch) | |
tree | a4fe1110757c8b5844adc758c32238b8e0250043 /meta/recipes-core/busybox/files | |
parent | 7d6a2856cd89b7233aaaf9b12c75cd8ccf73faa9 (diff) | |
download | openembedded-core-75cb4fe38fade382450c5f6f35d5dcf55962143e.tar.gz openembedded-core-75cb4fe38fade382450c5f6f35d5dcf55962143e.tar.bz2 openembedded-core-75cb4fe38fade382450c5f6f35d5dcf55962143e.zip |
busybox: Add support for busybox-init
in config metadata we can configure busybox based init and device
initializer ( mdev ) using e.g.
VIRTUAL-RUNTIME_dev_manager = "busybox-mdev"
VIRTUAL-RUNTIME_login_manager = "busybox"
VIRTUAL-RUNTIME_init_manager = "busybox"
VIRTUAL-RUNTIME_initscripts = "initscripts"
VIRTUAL-RUNTIME_keymaps = "keymaps"
DISTRO_FEATURES_BACKFILL_CONSIDERED += "sysvinit"
busybox can be used to provide init system
combined with mdev it makes it a complete init
system for really tiny systems.
This patch uses above defines to configure features in busybox to enable
the init system and mdev in a configurable manner
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta/recipes-core/busybox/files')
-rw-r--r-- | meta/recipes-core/busybox/files/inittab | 24 | ||||
-rw-r--r-- | meta/recipes-core/busybox/files/rcK | 25 | ||||
-rw-r--r-- | meta/recipes-core/busybox/files/rcS | 26 | ||||
-rw-r--r-- | meta/recipes-core/busybox/files/runlevel | 11 |
4 files changed, 86 insertions, 0 deletions
diff --git a/meta/recipes-core/busybox/files/inittab b/meta/recipes-core/busybox/files/inittab new file mode 100644 index 0000000000..bfec4a7743 --- /dev/null +++ b/meta/recipes-core/busybox/files/inittab @@ -0,0 +1,24 @@ +# This is run first except when booting in single-user mode. + +# Startup the system +null::sysinit:/bin/mount -t proc proc /proc +null::sysinit:/bin/mount -t sysfs sysfs /sys +null::sysinit:/bin/mount -t devtmpfs devtmpfs /dev +null::sysinit:/bin/mount -o remount,rw / +null::sysinit:/bin/mkdir -p /dev/pts +null::sysinit:/bin/mount -t devpts devpts /dev/pts +null::sysinit:/bin/mount -a + +::sysinit:/etc/init.d/rcS + +# Stuff to do before rebooting +::ctrlaltdel:/sbin/reboot +::shutdown:/etc/init.d/rcK +::shutdown:/sbin/swapoff -a +::shutdown:/bin/umount -a -r + +# Stuff to do when restarting the init process +::restart:/sbin/init + +# set hostname +null::sysinit:/bin/busybox hostname -F /etc/hostname diff --git a/meta/recipes-core/busybox/files/rcK b/meta/recipes-core/busybox/files/rcK new file mode 100644 index 0000000000..050086ecd8 --- /dev/null +++ b/meta/recipes-core/busybox/files/rcK @@ -0,0 +1,25 @@ +#!/bin/sh + +# Stop all init scripts in /etc/init.d +# executing them in reversed numerical order. +# +for i in /etc/rc6.d/K??*; do + # Ignore dangling symlinks (if any). + [ ! -f "$i" ] && continue + + case "$i" in + *.sh) + # Source shell script for speed. + ( + trap - INT QUIT TSTP + set stop + . $i + ) + ;; + *) + # No sh extension, so fork subprocess. + $i stop + ;; + esac +done + diff --git a/meta/recipes-core/busybox/files/rcS b/meta/recipes-core/busybox/files/rcS new file mode 100644 index 0000000000..d18c26b4c3 --- /dev/null +++ b/meta/recipes-core/busybox/files/rcS @@ -0,0 +1,26 @@ +#!/bin/sh + +# Stop all init scripts in /etc/init.d +# executing them in reversed numerical order. +# + +for i in /etc/rcS.d/S??* /etc/rc5.d/S??* ;do + # Ignore dangling symlinks (if any). + [ ! -f "$i" ] && continue + + case "$i" in + *.sh) + # Source shell script for speed. + ( + trap - INT QUIT TSTP + set stop + . $i + ) + ;; + *) + # No sh extension, so fork subprocess. + $i start + ;; + esac +done + diff --git a/meta/recipes-core/busybox/files/runlevel b/meta/recipes-core/busybox/files/runlevel new file mode 100644 index 0000000000..866f3b5945 --- /dev/null +++ b/meta/recipes-core/busybox/files/runlevel @@ -0,0 +1,11 @@ +#!/bin/sh +# busybox init does not have LSB ( sysvinit ) like initlevels +# so lets fake it to 5 which is what we default anyway +# this helps with opkg post installs where it tries to invoke +# update-rc.d ad post install step. +# for package upgrades +# See code in update-rc.d around line 190 where it calls runlevel +# program +# +echo "5" + |