个人工具

“UbuntuHelp:SerialConsoleHowto”的版本间的差异

来自Ubuntu中文

跳转至: 导航, 搜索
第2行: 第2行:
 
{{Languages|UbuntuHelp:SerialConsoleHowto}}
 
{{Languages|UbuntuHelp:SerialConsoleHowto}}
 
This document presents (almost) the minimum amount of work required to enable a serial console login on an Ubuntu 6.06 installation.  (Minor changes have been added to improve performance)  Both server and client settings are included.
 
This document presents (almost) the minimum amount of work required to enable a serial console login on an Ubuntu 6.06 installation.  (Minor changes have been added to improve performance)  Both server and client settings are included.
 
 
This procedure was developed using the Remote Serial Console HOWTO ([
 
This procedure was developed using the Remote Serial Console HOWTO ([
 
http://www.faqs.org/docs/Linux-HOWTO/Remote-Serial-Console-HOWTO.html]), and adapted to apply specifically to Ubuntu 6.06. The reader is referred to this document for any issues arising from using this HOWTO.
 
http://www.faqs.org/docs/Linux-HOWTO/Remote-Serial-Console-HOWTO.html]), and adapted to apply specifically to Ubuntu 6.06. The reader is referred to this document for any issues arising from using this HOWTO.
 
 
==== Assumptions ====
 
==== Assumptions ====
 
* You have enabled the serial console in your BIOS.
 
* You have enabled the serial console in your BIOS.
第11行: 第9行:
 
* You are comfortable editing critical system files such as /etc/inittab, /boot/grub/menu.lst
 
* You are comfortable editing critical system files such as /etc/inittab, /boot/grub/menu.lst
 
* You are using a serial (null modem) cable.  It is also possible to use a USB to Serial adaptor, but the tty* must be changed to reflect your hardware.
 
* You are using a serial (null modem) cable.  It is also possible to use a USB to Serial adaptor, but the tty* must be changed to reflect your hardware.
 
 
Note: an excellent resource is: http://www.lammertbies.nl/comm/cable/yost-serial-rj45.html which will show you how to make Serial to Cat 5 adaptors.
 
Note: an excellent resource is: http://www.lammertbies.nl/comm/cable/yost-serial-rj45.html which will show you how to make Serial to Cat 5 adaptors.
 
 
=== Server Setup ===
 
=== Server Setup ===
 
 
==== Configuring the console login process ====
 
==== Configuring the console login process ====
 
This section details how to configure the 'getty' process to enable a login via the console port.
 
This section details how to configure the 'getty' process to enable a login via the console port.
 
 
1) Edit /etc/inittab
 
1) Edit /etc/inittab
 
 
 
NOTE: In newer versions of ubuntu, inittab is no longer used. Instead, look in /etc/event.d and make modifications there.  
 
NOTE: In newer versions of ubuntu, inittab is no longer used. Instead, look in /etc/event.d and make modifications there.  
 
 
 
<pre><nowiki>
 
<pre><nowiki>
 
sudo vi /etc/inittab
 
sudo vi /etc/inittab
 
</nowiki></pre>
 
</nowiki></pre>
 
 
2) Change the following line:
 
2) Change the following line:
 
 
<pre><nowiki>
 
<pre><nowiki>
 
#T0:23:respawn:/sbin/getty -L ttyS0 9600 vt100
 
#T0:23:respawn:/sbin/getty -L ttyS0 9600 vt100
 
</nowiki></pre>
 
</nowiki></pre>
 
 
to:
 
to:
 
 
<pre><nowiki>
 
<pre><nowiki>
 
T0:23:respawn:/sbin/getty -L ttyS0 115200 vt100
 
T0:23:respawn:/sbin/getty -L ttyS0 115200 vt100
 
</nowiki></pre>
 
</nowiki></pre>
 
 
3) Restart init:
 
3) Restart init:
 
 
<pre><nowiki>
 
<pre><nowiki>
 
sudo /sbin/telinit q
 
sudo /sbin/telinit q
 
</nowiki></pre>
 
</nowiki></pre>
 
 
At this point, a new login prompt should appear on the output of the serial console.
 
At this point, a new login prompt should appear on the output of the serial console.
 
 
==== Configuring grub ====
 
==== Configuring grub ====
 
This section details how to get grub talking via the serial port.
 
This section details how to get grub talking via the serial port.
 
 
This section is optional if the user does not want grub interaction via the serial console port.
 
This section is optional if the user does not want grub interaction via the serial console port.
 
 
1) Edit /boot/grub/menu.lst:
 
1) Edit /boot/grub/menu.lst:
 
 
<pre><nowiki>
 
<pre><nowiki>
 
vi /boot/grub/menu.lst
 
vi /boot/grub/menu.lst
 
</nowiki></pre>
 
</nowiki></pre>
 
 
2) Add the following lines to the top of the file:
 
2) Add the following lines to the top of the file:
 
 
<pre><nowiki>
 
<pre><nowiki>
 
# Enable console output via the serial port. unit 0 is /dev/ttyS0, unit 1 is /dev/ttyS1...
 
# Enable console output via the serial port. unit 0 is /dev/ttyS0, unit 1 is /dev/ttyS1...
第67行: 第44行:
 
terminal --timeout=15 serial console
 
terminal --timeout=15 serial console
 
</nowiki></pre>
 
</nowiki></pre>
 
 
3) When you next reboot, the output from grub will go to the normal console '''unless''' input is received from the serial port.  Whichever receives input first becomes the default console.  This gives you the best of both worlds.
 
3) When you next reboot, the output from grub will go to the normal console '''unless''' input is received from the serial port.  Whichever receives input first becomes the default console.  This gives you the best of both worlds.
 
 
==== Configuring the kernel boot parameters ====
 
==== Configuring the kernel boot parameters ====
 
This section details how to configure the kernel boot parameters to get boot information through the console port.
 
This section details how to configure the kernel boot parameters to get boot information through the console port.
 
 
This section is optional if the user does not want the kernel boot messages to appear on the serial console port.
 
This section is optional if the user does not want the kernel boot messages to appear on the serial console port.
 
 
The following procedure can be carried out by modifying the 'kernel' line in grub prior to committing the changes directly to the /boot/grub/menu.lst file.
 
The following procedure can be carried out by modifying the 'kernel' line in grub prior to committing the changes directly to the /boot/grub/menu.lst file.
 
 
1) Edit /boot/grub/menu.lst:
 
1) Edit /boot/grub/menu.lst:
 
 
<pre><nowiki>
 
<pre><nowiki>
 
sudo vi /boot/grub/menu.lst
 
sudo vi /boot/grub/menu.lst
 
</nowiki></pre>
 
</nowiki></pre>
 
 
2) Modify the kernel line for the image you want to boot using the serial console on. In this case, I'm setting up the default 2.6.10-5.386 kernel to use the serial console line. Change:
 
2) Modify the kernel line for the image you want to boot using the serial console on. In this case, I'm setting up the default 2.6.10-5.386 kernel to use the serial console line. Change:
 
 
<pre><nowiki>
 
<pre><nowiki>
 
title          Ubuntu, kernel 2.6.10-5-386
 
title          Ubuntu, kernel 2.6.10-5-386
第93行: 第62行:
 
boot
 
boot
 
</nowiki></pre>
 
</nowiki></pre>
 
 
to:
 
to:
 
 
<pre><nowiki>
 
<pre><nowiki>
 
title          Ubuntu, kernel 2.6.10-5-386
 
title          Ubuntu, kernel 2.6.10-5-386
第104行: 第71行:
 
boot
 
boot
 
</nowiki></pre>
 
</nowiki></pre>
 
 
'''NOTE:''' the first console parameter is 'console=tty0', '''not''' ttyS0
 
'''NOTE:''' the first console parameter is 'console=tty0', '''not''' ttyS0
 
 
3) Reboot into this kernel. Output from the boot process should be sent via the serial console line.
 
3) Reboot into this kernel. Output from the boot process should be sent via the serial console line.
 
 
=== Client Setup ===
 
=== Client Setup ===
 
 
1) Install minicom
 
1) Install minicom
 
<pre><nowiki>
 
<pre><nowiki>
 
sudo apt-get install minicom
 
sudo apt-get install minicom
 
</nowiki></pre>
 
</nowiki></pre>
 
 
2) Configure minicom.
 
2) Configure minicom.
 
<pre><nowiki>
 
<pre><nowiki>
 
sudo minicom -s
 
sudo minicom -s
 
</nowiki></pre>
 
</nowiki></pre>
 
 
3) Configure client serial port settings: In Serial port setup, set the following options
 
3) Configure client serial port settings: In Serial port setup, set the following options
 
<pre><nowiki>
 
<pre><nowiki>
第126行: 第87行:
 
E - Bps/Par/Bits: 115200 8N1
 
E - Bps/Par/Bits: 115200 8N1
 
</nowiki></pre>
 
</nowiki></pre>
 
 
4) Configure Initialization string: In Modem and dialing clear the init
 
4) Configure Initialization string: In Modem and dialing clear the init
 
<pre><nowiki>
 
<pre><nowiki>
 
A - Init string .....  
 
A - Init string .....  
 
</nowiki></pre>
 
</nowiki></pre>
 
 
5) Save setup as dfl
 
5) Save setup as dfl
 
 
6) You might need to press enter several times to get the connection running.
 
6) You might need to press enter several times to get the connection running.
 
 
7) To log on in the future, run
 
7) To log on in the future, run
 
<pre><nowiki>
 
<pre><nowiki>
第141行: 第98行:
 
</nowiki></pre>
 
</nowiki></pre>
 
and press enter several times if it does not come up on start up.
 
and press enter several times if it does not come up on start up.
 
 
 
[[category:CategoryDocumentation]]
 
[[category:CategoryDocumentation]]
  
 
[[category:UbuntuHelp]]
 
[[category:UbuntuHelp]]

2007年11月30日 (五) 21:26的版本

This document presents (almost) the minimum amount of work required to enable a serial console login on an Ubuntu 6.06 installation. (Minor changes have been added to improve performance) Both server and client settings are included. This procedure was developed using the Remote Serial Console HOWTO ([ http://www.faqs.org/docs/Linux-HOWTO/Remote-Serial-Console-HOWTO.html]), and adapted to apply specifically to Ubuntu 6.06. The reader is referred to this document for any issues arising from using this HOWTO.

Assumptions

  • You have enabled the serial console in your BIOS.
  • The serial connection is being made at 115200 baud 8n1, on console port /dev/ttyS0 (9600 8n1 is the default fall back if your hardware does not support 115200 baud)
  • You are comfortable editing critical system files such as /etc/inittab, /boot/grub/menu.lst
  • You are using a serial (null modem) cable. It is also possible to use a USB to Serial adaptor, but the tty* must be changed to reflect your hardware.

Note: an excellent resource is: http://www.lammertbies.nl/comm/cable/yost-serial-rj45.html which will show you how to make Serial to Cat 5 adaptors.

Server Setup

Configuring the console login process

This section details how to configure the 'getty' process to enable a login via the console port. 1) Edit /etc/inittab NOTE: In newer versions of ubuntu, inittab is no longer used. Instead, look in /etc/event.d and make modifications there.

sudo vi /etc/inittab

2) Change the following line:

#T0:23:respawn:/sbin/getty -L ttyS0 9600 vt100

to:

T0:23:respawn:/sbin/getty -L ttyS0 115200 vt100

3) Restart init:

sudo /sbin/telinit q

At this point, a new login prompt should appear on the output of the serial console.

Configuring grub

This section details how to get grub talking via the serial port. This section is optional if the user does not want grub interaction via the serial console port. 1) Edit /boot/grub/menu.lst:

vi /boot/grub/menu.lst

2) Add the following lines to the top of the file:

# Enable console output via the serial port. unit 0 is /dev/ttyS0, unit 1 is /dev/ttyS1...
serial --unit=0 --speed=115200 --word=8 --parity=no --stop=1
terminal --timeout=15 serial console

3) When you next reboot, the output from grub will go to the normal console unless input is received from the serial port. Whichever receives input first becomes the default console. This gives you the best of both worlds.

Configuring the kernel boot parameters

This section details how to configure the kernel boot parameters to get boot information through the console port. This section is optional if the user does not want the kernel boot messages to appear on the serial console port. The following procedure can be carried out by modifying the 'kernel' line in grub prior to committing the changes directly to the /boot/grub/menu.lst file. 1) Edit /boot/grub/menu.lst:

sudo vi /boot/grub/menu.lst

2) Modify the kernel line for the image you want to boot using the serial console on. In this case, I'm setting up the default 2.6.10-5.386 kernel to use the serial console line. Change:

title           Ubuntu, kernel 2.6.10-5-386
root            (hd0,0)
kernel          /boot/vmlinuz-2.6.10-5-386 root=/dev/hda1 ro quiet splash
initrd          /boot/initrd.img-2.6.10-5-386
savedefault
boot

to:

title           Ubuntu, kernel 2.6.10-5-386
root            (hd0,0)
kernel          /boot/vmlinuz-2.6.10-5-386 root=/dev/hda1 ro quiet splash console=tty0 console=ttyS0,115200n8
initrd          /boot/initrd.img-2.6.10-5-386
savedefault
boot

NOTE: the first console parameter is 'console=tty0', not ttyS0 3) Reboot into this kernel. Output from the boot process should be sent via the serial console line.

Client Setup

1) Install minicom

sudo apt-get install minicom

2) Configure minicom.

sudo minicom -s

3) Configure client serial port settings: In Serial port setup, set the following options

A - Serial device: /dev/ttyS0
E - Bps/Par/Bits: 115200 8N1

4) Configure Initialization string: In Modem and dialing clear the init

A - Init string ..... 

5) Save setup as dfl 6) You might need to press enter several times to get the connection running. 7) To log on in the future, run

sudo minicom

and press enter several times if it does not come up on start up.