[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#309223: Serial console support for PXE boot



I know the timing is bad and that this probably have to be delayed until
after lenny is released, but I just haven't been able to find the answer
to this question:

Why isn't
  serial 0 9600 0
included in debian-installer/*/boot-screens/menu.cfg?

Is this known to cause problems on any system?  The advantage should be
obvious:  It will enable installation using either serial or VGA console
(or even both).  You will still need to edit the kernel command line to
do a serial install, but at least you will be able to do so without a
VGA console.

The only reason I've found for dropping serial support is this comment
in the changelog:


debian-installer (20080522)
[..]
   * Note that the pxelinux config file for serial terminals has been dropped,
     at least for now, since the split config files made it too difficult to
     set up.


This does not explain why the config couldn't be merged.  It seems to me
that something like this should work, just adding a separate sub menu
for serial console:

--- debian-installer/amd64/boot-screens/menu.cfg.orig	2008-10-29 13:09:04.000000000 +0100
+++ debian-installer/amd64/boot-screens/menu.cfg	2008-11-13 11:55:11.000000000 +0100
@@ -1,3 +1,5 @@
+serial 0 9600 0
+
 menu hshift 13
 menu width 49
 
@@ -18,6 +20,15 @@
 	include debian-installer/amd64/boot-screens/adgtk.cfg
 	include debian-installer/amd64/boot-screens/adamdgtk.cfg
 menu end
+menu begin serial
+	menu title Serial console 
+	label mainmenu
+		menu label ^Back..
+		menu exit
+	include debian-installer/amd64/boot-screens/stdmenu.cfg
+	include debian-installer/amd64/boot-screens/sadtext.cfg
+	include debian-installer/amd64/boot-screens/adamdtext.cfg
+menu end
 label help
 	menu label ^Help
 	config debian-installer/amd64/boot-screens/prompt.cfg
--- /dev/null	2008-10-17 17:20:56.736525434 +0200
+++ debian-installer/amd64/boot-screens/sadtext.cfg	2008-11-13 12:29:01.000000000 +0100
@@ -0,0 +1,18 @@
+default sinstall
+label sinstall
+        menu label ^Install
+        menu default
+        kernel debian-installer/amd64/linux
+        append vga=normal initrd=debian-installer/amd64/initrd.gz -- console=ttyS0,9600n8 quiet
+label expert
+	menu label ^Expert install
+	kernel debian-installer/amd64/linux
+	append priority=low vga=normal initrd=debian-installer/amd64/initrd.gz -- console=ttyS0,9600n8
+label rescue
+	menu label ^Rescue mode
+	kernel debian-installer/amd64/linux
+	append debian-installer/serial-console vga=normal initrd=debian-installer/amd64/initrd.gz rescue/enable=true -- console=ttyS0,9600n8 quiet 
+label auto
+	menu label ^Automated install
+	kernel debian-installer/amd64/linux
+	append auto=true priority=critical vga=normal initrd=debian-installer/amd64/initrd.gz -- console=ttyS0,9600n8 quiet 

At least it seems to work for me.  But it will of course need to be
tested on more systems, and I realise that adding it at this stage is
not an option.  I just want to understand why it hasn't been done
before.  Just lack of interest?  I can take some blame for that...

FWIW, my experiments showed that a minor adjustment to prompt.cfg may be
necessary to display the help menu on a serial console:

--- debian-installer/amd64/boot-screens/prompt.cfg.orig	2008-10-29 13:09:04.000000000 +0100
+++ debian-installer/amd64/boot-screens/prompt.cfg	2008-11-13 13:07:06.000000000 +0100
@@ -1,7 +1,7 @@
+include debian-installer/amd64/boot-screens/menu.cfg
 prompt 1
 display debian-installer/amd64/boot-screens/f1.txt
 timeout 0
-include debian-installer/amd64/boot-screens/menu.cfg
 
 f1 debian-installer/amd64/boot-screens/f1.txt
 f2 debian-installer/amd64/boot-screens/f2.txt

Without this, the main menu be shown instead of f1.txt.  

f1.txt may also be updated with instructions on how to use ctrl+digit
instead of F-keys on a serial console, like the etch installer did, but
I think this may be omitted to avoid confusing things too much for most
users.  Those installing on a serial console may be expected to look up
this information in the manual.


Bjørn




Reply to: