diff options
Diffstat (limited to 'scripts/casper-bottom/25configure_init')
-rwxr-xr-x | scripts/casper-bottom/25configure_init | 14 |
1 files changed, 10 insertions, 4 deletions
diff --git a/scripts/casper-bottom/25configure_init b/scripts/casper-bottom/25configure_init index 010e2eb..84fa741 100755 --- a/scripts/casper-bottom/25configure_init +++ b/scripts/casper-bottom/25configure_init @@ -23,10 +23,7 @@ log_begin_msg "$DESCRIPTION" # Arrange for shells on virtual consoles, rather than login prompts if [ -n "$USERNAME" ]; then - if [ -z "${CASPERGETTY}" ]; then - sed -i -e "s|^\([^:]*:[^:]*:[^:]*\):.*getty.*\<\(tty[0-9].*\).*$|\1:/bin/login -f $USERNAME </dev/\2 >/dev/\2 2>\&1|" /root/etc/inittab - else - sed -i -e'/^[^#]/s%respawn:/sbin/getty%respawn:/sbin/casper-getty%' /root/etc/inittab + if [ ! -z "${CASPERGETTY}" ]; then # AUTOMATIC SERIAL CONSOLE # defconsole=$(sed -e 's%.*console=%console=%' /proc/cmdline) if echo "${defconsole}" | grep -qs console=ttyS; then @@ -50,6 +47,15 @@ if [ -n "$USERNAME" ]; then >>/root/etc/inittab fi fi + else + if [ -f /root/etc/inittab ]; then + sed -i -e "s|^\([^:]*:[^:]*:[^:]*\):.*getty.*\<\(tty[0-9]*\).*$|\1:/bin/login -f $USERNAME </dev/\2 >/dev/\2 2>\&1|" /root/etc/inittab + fi + if [ "/root/etc/event.d/tty*" != "$(echo /root/etc/event.d/tty*)" ]; then + for f in /root/etc/event.d/tty*; do + sed -i -e "s|^respawn.*|respawn /bin/login -f $USERNAME </dev/$(basename $f) > /dev/$(basename $f) 2>\&1|" $f + done + fi fi fi |