From d812cc131ee23cfe234f6f2e6137427afbeebb31 Mon Sep 17 00:00:00 2001 From: Simo Leone Date: Thu, 3 Mar 2011 02:53:02 -0800 Subject: [PATCH] Start agetty on kernel cmdline-provided console This makes interactive installations over serial consoles possible with nothing more than specifying the console= kernel parameter. Changed inittab id "s0" -> "z0" to avoid conflict with line ttyS0. (Gerardo) Signed-off-by: Gerardo Exequiel Pozzi --- configs/syslinux-iso/overlay/etc/rc.d/archiso | 21 +++++++++++++++++++ 1 file changed, 21 insertions(+) diff --git a/configs/syslinux-iso/overlay/etc/rc.d/archiso b/configs/syslinux-iso/overlay/etc/rc.d/archiso index 435152a..bbe71bf 100755 --- a/configs/syslinux-iso/overlay/etc/rc.d/archiso +++ b/configs/syslinux-iso/overlay/etc/rc.d/archiso @@ -86,11 +86,32 @@ do_fix_perms () stat_done } +# If an alternate console was specified on the kernel command line, +# start agetty on it too. +do_special_console() +{ + cmdline_console="$(kernel_cmdline console)" + [ $? -ne 0 ] && return + + dev="${cmdline_console%%,*}" + args="${cmdline_console##*,}" + baud="${args%%[neo]*}" && baud="${baud:-"9600"}" + [ "x${args}" != "x${args%%r}" ] && rts="-h" + + + stat_busy "Starting agetty on console: ${cmdline_console}" + echo "${dev}" >> /etc/securetty + echo "z0:2345:respawn:/sbin/agetty ${rts} ${baud} ${dev} linux" >> /etc/inittab + /sbin/telinit q + stat_done +} + case "$1" in start) do_locale_gen do_makeuser do_fix_perms + do_special_console ;; esac exit 0