9 Using GRUB via a serial line
******************************

This chapter describes how to use the serial terminal support in GRUB.

   If you have many computers or computers with no display/keyboard, it
could be very useful to control the computers through serial
communications.  To connect one computer with another via a serial line,
you need to prepare a null-modem (cross) serial cable, and you may need
to have multiport serial boards, if your computer doesn't have extra
serial ports.  In addition, a terminal emulator is also required, such
as minicom.  Refer to a manual of your operating system, for more
information.

   As for GRUB, the instruction to set up a serial terminal is quite
simple.  Here is an example:

     grub> serial --unit=0 --speed=9600
     grub> terminal_input serial; terminal_output serial

   The command 'serial' initializes the serial unit 0 with the speed
9600bps.  The serial unit 0 is usually called 'COM1', so, if you want to
use COM2, you must specify '--unit=1' instead.  This command accepts
many other options, so please refer to *note serial::, for more details.

   The commands 'terminal_input' (*note terminal_input::) and
'terminal_output' (*note terminal_output::) choose which type of
terminal you want to use.  In the case above, the terminal will be a
serial terminal, but you can also pass 'console' to the command, as
'terminal_input serial console'.  In this case, a terminal in which you
press any key will be selected as a GRUB terminal.  In the example
above, note that you need to put both commands on the same command line,
as you will lose the ability to type commands on the console after the
first command.

   However, note that GRUB assumes that your terminal emulator is
compatible with VT100 by default.  This is true for most terminal
emulators nowadays, but you should pass the option '--dumb' to the
command if your terminal emulator is not VT100-compatible or implements
few VT100 escape sequences.  If you specify this option then GRUB
provides you with an alternative menu interface, because the normal menu
requires several fancy features of your terminal.

