On 03/03/2011 07:53 AM, Simo Leone wrote:
This makes interactive installations over serial consoles possible with
nothing more than specifying the console= kernel parameter.
---
  configs/syslinux-iso/overlay/etc/rc.d/archiso |   21 +++++++++++++++++++++
  1 files changed, 21 insertions(+), 0 deletions(-)

diff --git a/configs/syslinux-iso/overlay/etc/rc.d/archiso 
b/configs/syslinux-iso/overlay/etc/rc.d/archiso
index e1b5997..15653b5 100755
--- a/configs/syslinux-iso/overlay/etc/rc.d/archiso
+++ b/configs/syslinux-iso/overlay/etc/rc.d/archiso
@@ -26,11 +26,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 "s0: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
Pushed to master.

Not tested here.

--
Gerardo Exequiel Pozzi
\cos^2\alpha + \sin^2\alpha = 1

Reply via email to