From 27d8537d672ae79f428732644595023e0030b80c Mon Sep 17 00:00:00 2001 From: Aaron Ball Date: Sun, 22 May 2016 21:57:20 -0600 Subject: Added basic support for interractive mode Drops the boot sequence into an interractive bash shell, just prior to mounting the new root fs (the first step where real issues may occur). This is mostly useful for debugging to see what the environment looks like, manually mount partitions, etc. --- init | 17 ++++++++++++++--- mkinitramfs | 2 ++ 2 files changed, 16 insertions(+), 3 deletions(-) diff --git a/init b/init index d45798e..c0ffa88 100755 --- a/init +++ b/init @@ -1,7 +1,8 @@ #!/bin/bash -DEBUG=0 -ROOTDEV='' +export DEBUG=0 +export INTERRACTIVE=0 +export ROOTDEV='' function screen_init { # Clear screen @@ -56,10 +57,14 @@ function parse_cmdline { # Enable debug mode (this is gonna be slow DEBUG=1 ;; + interractive) + # Enable interractive mode + INTERRACTIVE=1 + ;; esac done } - + # # Returns type of partition. If part is LUKS encrypted, returns 'luks'. If @@ -138,6 +143,12 @@ function main { ROOTDEV=$(setup_encrypted ${ROOTDEV}) log "New rootdev: ${ROOTDEV}" fi + + # Drop to interractive shell if requested + if [[ ${INTERRACTIVE} == 1 ]]; then + log "Interractive shell requested. Type 'exit' to continue boot sequence." + bash --norc + fi # Mount the fakeroot. log "Mounting fakeroot" diff --git a/mkinitramfs b/mkinitramfs index e7d7943..4c738bb 100755 --- a/mkinitramfs +++ b/mkinitramfs @@ -240,6 +240,8 @@ function main { cp ${res_path}/init ${cache}/init && chmod +x ${cache}/init # Copy in message file cp ${res_path}/msg ${cache}/etc/msg + # Copy in the system shell profile + cp /etc/profile ${cache}/etc/profile # Create archive image mkcpio ${cache} ${version} -- cgit v1.2.3