diff options
Diffstat (limited to 'meta/recipes-core/busybox/files')
-rw-r--r-- | meta/recipes-core/busybox/files/busybox-syslog.default | 2 | ||||
-rw-r--r-- | meta/recipes-core/busybox/files/inittab | 28 | ||||
-rwxr-xr-x | meta/recipes-core/busybox/files/mdev | 54 | ||||
-rw-r--r-- | meta/recipes-core/busybox/files/mdev-mount.sh | 12 | ||||
-rw-r--r-- | meta/recipes-core/busybox/files/mdev.conf | 2 | ||||
-rwxr-xr-x | meta/recipes-core/busybox/files/mount.busybox | 3 | ||||
-rw-r--r-- | meta/recipes-core/busybox/files/rcK | 26 | ||||
-rw-r--r-- | meta/recipes-core/busybox/files/rcS | 27 | ||||
-rw-r--r-- | meta/recipes-core/busybox/files/rcS.default | 31 | ||||
-rw-r--r-- | meta/recipes-core/busybox/files/run-ptest | 8 | ||||
-rw-r--r-- | meta/recipes-core/busybox/files/simple.script | 28 | ||||
-rw-r--r-- | meta/recipes-core/busybox/files/syslog | 22 | ||||
-rwxr-xr-x | meta/recipes-core/busybox/files/umount.busybox | 3 |
13 files changed, 200 insertions, 46 deletions
diff --git a/meta/recipes-core/busybox/files/busybox-syslog.default b/meta/recipes-core/busybox/files/busybox-syslog.default index e516caf518..2dced80231 100644 --- a/meta/recipes-core/busybox/files/busybox-syslog.default +++ b/meta/recipes-core/busybox/files/busybox-syslog.default @@ -1,4 +1,4 @@ -OPTIONS="-C" +#OPTIONS="-C" # The above option means syslogd will log to 16K shm circular buffer. # You could use `logread' to read it. diff --git a/meta/recipes-core/busybox/files/inittab b/meta/recipes-core/busybox/files/inittab new file mode 100644 index 0000000000..e8ec2ab68e --- /dev/null +++ b/meta/recipes-core/busybox/files/inittab @@ -0,0 +1,28 @@ +# This is run first except when booting in single-user mode. + +# Startup the system +::sysinit:/bin/mount -t proc proc /proc +::sysinit:/bin/mount -t sysfs sysfs /sys +::sysinit:/bin/mount -t devtmpfs devtmpfs /dev +::sysinit:/bin/mount -o remount,rw / +::sysinit:/bin/mkdir -p /dev/pts +::sysinit:/bin/mount -t devpts devpts /dev/pts +::sysinit:/bin/mount -a +::sysinit:/sbin/swapon -a +null::sysinit:/bin/ln -sf /proc/self/fd /dev/fd +null::sysinit:/bin/ln -sf /proc/self/fd/0 /dev/stdin +null::sysinit:/bin/ln -sf /proc/self/fd/1 /dev/stdout +null::sysinit:/bin/ln -sf /proc/self/fd/2 /dev/stderr +# set hostname +null::sysinit:/bin/busybox hostname -F /etc/hostname +::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 + diff --git a/meta/recipes-core/busybox/files/mdev b/meta/recipes-core/busybox/files/mdev index 96252477e0..2fbdfb073e 100755 --- a/meta/recipes-core/busybox/files/mdev +++ b/meta/recipes-core/busybox/files/mdev @@ -1,19 +1,43 @@ #!/bin/sh - -mount -t tmpfs tmpfs /dev -o size=64k,mode=0755 -mkdir /dev/pts /dev/shm -chmod 777 /dev/shm -mount -t devpts devpts /dev/pts -touch /dev/mdev.seq -echo "/sbin/mdev" > /proc/sys/kernel/hotplug -mdev -s - # -# We might have mounted something over /dev, see if /dev/initctl is there. +# Run the mdev daemon # -if test ! -p /dev/initctl -then - rm -f /dev/initctl - mknod -m 600 /dev/initctl p -fi + +DAEMON="mdev" +PIDFILE="/var/run/$DAEMON.pid" + + +start() { + echo -n "Starting $DAEMON... " + start-stop-daemon -S -b -m -p $PIDFILE -x /sbin/mdev -- -df + [ $? -eq 0 ] && echo "OK" || echo "ERROR" + + # coldplug modules + find /sys/ -name modalias -print0 | \ + xargs -0 sort -u | \ + tr '\n' '\0' | \ + xargs -0 modprobe -abq +} + +stop() { + echo -n "Stopping $DAEMON... " + start-stop-daemon -K -p $PIDFILE + [ $? -eq 0 ] && echo "OK" || echo "ERROR" +} + +restart() { + stop + start +} + +case "$1" in + start|stop|restart) + "$1" + ;; + *) + echo "Usage: $0 {start|stop|restart}" + exit 1 +esac + +exit $? diff --git a/meta/recipes-core/busybox/files/mdev-mount.sh b/meta/recipes-core/busybox/files/mdev-mount.sh index d5d66d66fb..130e9472f3 100644 --- a/meta/recipes-core/busybox/files/mdev-mount.sh +++ b/meta/recipes-core/busybox/files/mdev-mount.sh @@ -15,7 +15,7 @@ case "$ACTION" in exit 0 fi DEVBASE=`expr substr $MDEV 1 3` - if [ "${DEVBASE}" == "mmc" ] ; then + if [ "${DEVBASE}" = "mmc" ] ; then DEVBASE=`expr substr $MDEV 1 7` fi # check for "please don't mount it" file @@ -24,8 +24,8 @@ case "$ACTION" in exit 0 fi # check for full-disk partition - if [ "${DEVBASE}" == "${MDEV}" ] ; then - if [ -d /sys/block/${DEVBASE}/${DEVBASE}*1 ] ; then + if [ "${DEVBASE}" = "${MDEV}" ] ; then + if [ -f /sys/block/${DEVBASE}/${DEVBASE}*1/partition ] ; then # Partition detected, just quit exit 0 fi @@ -33,7 +33,7 @@ case "$ACTION" in # No size at all exit 0 fi - if [ `cat /sys/block/${DEVBASE}/size` == 0 ] ; then + if [ "`cat /sys/block/${DEVBASE}/size`" = "0" ] ; then # empty device, bail out exit 0 fi @@ -42,8 +42,8 @@ case "$ACTION" in if ! mount /dev/$MDEV > /dev/null 2>&1 then MOUNTPOINT="${MDEV_AUTOMOUNT_ROOT}/$MDEV" - mkdir "$MOUNTPOINT" - mount -t auto /dev/$MDEV "$MOUNTPOINT" + mkdir -p "$MOUNTPOINT" + mount -t auto /dev/$MDEV "$MOUNTPOINT" || rmdir "$MOUNTPOINT" fi ;; remove) diff --git a/meta/recipes-core/busybox/files/mdev.conf b/meta/recipes-core/busybox/files/mdev.conf index 17e93da7c3..4e9c23f14b 100644 --- a/meta/recipes-core/busybox/files/mdev.conf +++ b/meta/recipes-core/busybox/files/mdev.conf @@ -39,4 +39,6 @@ input/mouse.* 0:0 0660 tun[0-9]* 0:0 0660 =net/ [hs]d[a-z][0-9]? 0:0 660 */etc/mdev/mdev-mount.sh +mmcblk[0-9]rpmb 0:0 660 +mmcblk[0-9]boot[0-9] 0:0 660 mmcblk[0-9].* 0:0 660 */etc/mdev/mdev-mount.sh diff --git a/meta/recipes-core/busybox/files/mount.busybox b/meta/recipes-core/busybox/files/mount.busybox deleted file mode 100755 index fef945b7b2..0000000000 --- a/meta/recipes-core/busybox/files/mount.busybox +++ /dev/null @@ -1,3 +0,0 @@ -#!/bin/sh - -exec /bin/busybox mount $@ diff --git a/meta/recipes-core/busybox/files/rcK b/meta/recipes-core/busybox/files/rcK new file mode 100644 index 0000000000..f8a63e1325 --- /dev/null +++ b/meta/recipes-core/busybox/files/rcK @@ -0,0 +1,26 @@ +#!/bin/sh + +# Stop all init scripts in /etc/rc6.d +# executing them in 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..bb03eb6088 --- /dev/null +++ b/meta/recipes-core/busybox/files/rcS @@ -0,0 +1,27 @@ +#!/bin/sh + +# Start all init scripts in /etc/rcS.d and /etc/rc5.d +# executing them in 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 start + . $i + ) + ;; + *) + # No sh extension, so fork subprocess. + $i start + ;; + esac +done + diff --git a/meta/recipes-core/busybox/files/rcS.default b/meta/recipes-core/busybox/files/rcS.default new file mode 100644 index 0000000000..44c9747e34 --- /dev/null +++ b/meta/recipes-core/busybox/files/rcS.default @@ -0,0 +1,31 @@ +# +# Defaults for the boot scripts in /etc/rcS.d +# + +# Time files in /tmp are kept in days. +TMPTIME=0 +# Set to yes if you want sulogin to be spawned on bootup +SULOGIN=no +# Set to no if you want to be able to login over telnet/rlogin +# before system startup is complete (as soon as inetd is started) +DELAYLOGIN=no +# Assume that the BIOS clock is set to UTC time (recommended) +UTC=yes +# Set VERBOSE to "no" if you would like a more quiet bootup. +VERBOSE=no +# Set EDITMOTD to "no" if you don't want /etc/motd to be edited automatically +EDITMOTD=no +# Whether to fsck root on boot +ENABLE_ROOTFS_FSCK=no +# Set FSCKFIX to "yes" if you want to add "-y" to the fsck at startup. +FSCKFIX=yes +# Set TICKADJ to the correct tick value for this specific machine +#TICKADJ=10000 +# Enable caching in populate-volatile.sh +VOLATILE_ENABLE_CACHE=yes +# Indicate whether the rootfs is intended to be read-only or not. +# Setting ROOTFS_READ_ONLY to yes and rebooting will give you a read-only rootfs. +# Normally you should not change this value. +ROOTFS_READ_ONLY=no +# Indicate init system type +INIT_SYSTEM=busybox diff --git a/meta/recipes-core/busybox/files/run-ptest b/meta/recipes-core/busybox/files/run-ptest index 3608a8eb65..76873c9de2 100644 --- a/meta/recipes-core/busybox/files/run-ptest +++ b/meta/recipes-core/busybox/files/run-ptest @@ -1,7 +1,9 @@ #!/bin/sh -current_dir=$(readlink -f $0) -export bindir=$(dirname $current_dir) +current_path=$(readlink -f $0) +export bindir=$(dirname $current_path) +export PATH=$bindir/bin:$PATH +export SKIP_KNOWN_BUGS=1 cd testsuite || exit 1 -./runtest -v | sed -r 's/^(SKIPPED|UNTESTED):/SKIP:/' +LANG=C.UTF-8 ./runtest -v | sed -r 's/^(SKIPPED|UNTESTED):/SKIP:/' diff --git a/meta/recipes-core/busybox/files/simple.script b/meta/recipes-core/busybox/files/simple.script index 22168b07e6..013440574d 100644 --- a/meta/recipes-core/busybox/files/simple.script +++ b/meta/recipes-core/busybox/files/simple.script @@ -14,7 +14,7 @@ root_is_nfs() { } have_bin_ip=0 -if [ -x /sbin/ip ]; then +if [ -x /SBIN_DIR/ip ]; then have_bin_ip=1 BROADCAST="broadcast +" fi @@ -23,34 +23,34 @@ fi case "$1" in deconfig) - if [ -x /sbin/resolvconf ]; then - /sbin/resolvconf -d "${interface}.udhcpc" + if [ -x /SBIN_DIR/resolvconf ]; then + /SBIN_DIR/resolvconf -d "${interface}.udhcpc" fi if ! root_is_nfs ; then if [ $have_bin_ip -eq 1 ]; then - ip addr flush dev $interface - ip link set dev $interface up + /SBIN_DIR/ip -4 addr flush dev $interface + /SBIN_DIR/ip link set dev $interface up else - /sbin/ifconfig $interface 0.0.0.0 + /SBIN_DIR/ifconfig $interface 0.0.0.0 fi fi ;; renew|bound) if [ $have_bin_ip -eq 1 ]; then - ip addr add dev $interface local $ip/$mask $BROADCAST + /SBIN_DIR/ip addr add dev $interface local $ip/$mask $BROADCAST else - /sbin/ifconfig $interface $ip $BROADCAST $NETMASK + /SBIN_DIR/ifconfig $interface $ip $BROADCAST $NETMASK fi if [ -n "$router" ] ; then if ! root_is_nfs ; then if [ $have_bin_ip -eq 1 ]; then - while ip route del default dev $interface 2>/dev/null ; do + while /SBIN_DIR/ip route del default dev $interface 2>/dev/null ; do : done else - while route del default gw 0.0.0.0 dev $interface 2>/dev/null ; do + while /SBIN_DIR/route del default gw 0.0.0.0 dev $interface 2>/dev/null ; do : done fi @@ -59,9 +59,9 @@ case "$1" in metric=10 for i in $router ; do if [ $have_bin_ip -eq 1 ]; then - ip route add default via $i metric $metric + /SBIN_DIR/ip route add default via $i metric $metric dev $interface else - route add default gw $i dev $interface metric $metric 2>/dev/null + /SBIN_DIR/route add default gw $i dev $interface metric $metric 2>/dev/null fi metric=$(($metric + 1)) done @@ -77,8 +77,8 @@ case "$1" in " done - if [ -x /sbin/resolvconf ]; then - echo -n "$R" | /sbin/resolvconf -a "${interface}.udhcpc" + if [ -x /SBIN_DIR/resolvconf ]; then + echo -n "$R" | /SBIN_DIR/resolvconf -a "${interface}.udhcpc" else echo -n "$R" > "$RESOLV_CONF" fi diff --git a/meta/recipes-core/busybox/files/syslog b/meta/recipes-core/busybox/files/syslog index 89c4d12e9c..2208613e8c 100644 --- a/meta/recipes-core/busybox/files/syslog +++ b/meta/recipes-core/busybox/files/syslog @@ -51,6 +51,22 @@ else SYSLOG_ARGS="-C" fi +waitpid () +{ + pid=$1 + # Give pid a chance to exit before we restart with a 5s timeout in 1s intervals + if [ -z "$pid" ]; then + return + fi + timeout=5; + while [ $timeout -gt 0 ] + do + timeout=$(( $timeout-1 )) + kill -0 $pid 2> /dev/null || break + sleep 1 + done +} + case "$1" in start) echo -n "Starting syslogd/klogd: " @@ -65,7 +81,11 @@ case "$1" in echo "done" ;; restart) - $0 stop + pid1=`pidof syslogd` + pid2=`pidof klogd` + $0 stop + waitpid $pid1 + waitpid $pid2 $0 start ;; *) diff --git a/meta/recipes-core/busybox/files/umount.busybox b/meta/recipes-core/busybox/files/umount.busybox deleted file mode 100755 index f3731626e6..0000000000 --- a/meta/recipes-core/busybox/files/umount.busybox +++ /dev/null @@ -1,3 +0,0 @@ -#!/bin/sh - -exec /bin/busybox umount $@ |