diff options
author | Jesse Young <jlyo@jlyo.org> | 2018-08-13 13:55:24 -0500 |
---|---|---|
committer | Natanael Copa <ncopa@alpinelinux.org> | 2019-01-03 13:22:04 +0000 |
commit | 503c66dd581e3fcafbfe97876a99d5a8ec41a9d5 (patch) | |
tree | 2fa9d1447b5aaa72939968dbf7237f35404f3b8f | |
parent | 7b65037dcb1c50b2727a0a2678f9ac99407be918 (diff) | |
download | mkinitfs-503c66dd581e3fcafbfe97876a99d5a8ec41a9d5.tar.bz2 mkinitfs-503c66dd581e3fcafbfe97876a99d5a8ec41a9d5.tar.xz |
mkinitfs: init: enable the init= kernel command line argument
-rwxr-xr-x | initramfs-init.in | 13 |
1 files changed, 8 insertions, 5 deletions
diff --git a/initramfs-init.in b/initramfs-init.in index 538f286..69f917e 100755 --- a/initramfs-init.in +++ b/initramfs-init.in @@ -312,7 +312,7 @@ mount -t tmpfs -o nodev,nosuid,noexec shm /dev/shm set -- $(cat /proc/cmdline) myopts="alpine_dev autodetect autoraid chart cryptroot cryptdm cryptheader cryptoffset - cryptdiscards cryptkey debug_init dma init_args keep_apk_new modules ovl_dev + cryptdiscards cryptkey debug_init dma init init_args keep_apk_new modules ovl_dev pkgs quiet root_size root usbdelay ip alpine_repo apkovl alpine_start splash blacklist overlaytmpfs rootfstype rootflags nbd resume s390x_net dasd ssh_key BOOTIF" @@ -339,6 +339,9 @@ done # enable debugging if requested [ -n "$KOPT_debug_init" ] && set -x +# set default values +: ${KOPT_init:=/sbin/init} + # pick first keymap if found for map in /etc/keymap/*; do if [ -f "$map" ]; then @@ -486,7 +489,7 @@ if [ -n "$KOPT_root" ]; then fi done sync - exec /bin/busybox switch_root $sysroot $chart_init /sbin/init $KOPT_init_args + exec /bin/busybox switch_root $sysroot $chart_init "$KOPT_init" $KOPT_init_args echo "initramfs emergency recovery shell launched" exec /bin/busybox sh fi @@ -749,9 +752,9 @@ if [ "$KOPT_chart" = yes ]; then chart_init="/sbin/bootchartd start-rootfs" fi -if [ ! -x $sysroot/sbin/init ]; then +if [ ! -x "${sysroot}${KOPT_init}" ]; then [ "$KOPT_splash" != "no" ] && echo exit > $sysroot/$splashfile - echo "/sbin/init not found in new root. Launching emergency recovery shell" + echo "$KOPT_init not found in new root. Launching emergency recovery shell" echo "Type exit to continue boot." /bin/busybox sh fi @@ -767,7 +770,7 @@ sync [ "$KOPT_splash" = "init" ] && echo exit > $sysroot/$splashfile echo "" -exec /bin/busybox switch_root $sysroot $chart_init /sbin/init $KOPT_init_args +exec /bin/busybox switch_root $sysroot $chart_init "$KOPT_init" $KOPT_init_args [ "$KOPT_splash" != "no" ] && echo exit > $sysroot/$splashfile echo "initramfs emergency recovery shell launched" |