CentOS/RHEL v6.x:安装和配置串行控制台

时间:2020-01-09 10:34:15  来源:igfitidea点击:

问题描述:
如何在HP或Dell服务器上运行的CentOS Linux或Red Hat Enterprise Linux 6.x下配置串行控制台?

解决方法:
您需要使用setserial命令。
该命令旨在设置和/或报告与串行端口关联的配置信息。

setserial -g/dev/ttyS [0123]

输出示例:

/dev/ttyS0, UART: 16550A, Port: 0x03f8, IRQ: 4
/dev/ttyS1, UART: 16550A, Port: 0x02f8, IRQ: 3
/dev/ttyS2, UART: unknown, Port: 0x03e8, IRQ: 4
/dev/ttyS3, UART: unknown, Port: 0x02e8, IRQ: 3

我们的样品设置

我将使用以下配置:

  • 设备名称:/dev/ttyS1
  • 速度:19200
  • 字:8
  • 奇偶校验:否
  • Grub配置文件:/etc/grub.conf/boot/grub/grub.conf
  • 安全的tty配置文件:/etc/securetty
  • Upstart配置文件以在/dev/ttyS1上启动agetty:/etc/init/ttyS1.conf

步骤1:Grub配置

键入以下命令:

# vi /boot/grub/grub.conf

:hiddenmenu配置选项前添加以下几行:

serial --unit=1 --speed=19200 --word=8 --parity=no --stop=1
terminal --timeout=5 serial console

向下滚动并找到内核行,并附加以下配置选项:

console=tty0 console=ttyS1,19200n8

最后,您的grub.conf应该如下所示:

default=0
timeout=5
#splashimage=(hd0,0)/grub/splash.xpm.gz
serial --unit=1 --speed=19200 --word=8 --parity=no --stop=1
terminal --timeout=5 serial console
:hiddenmenu
title Red Hat Enterprise Linux Server (2.6.32-358.el6.x86_64)
        root (hd0,0)
        kernel /vmlinuz-2.6.32-358.el6.x86_64 ro root=UUID=00f30f09-2bfb-4dde-8396-eea16c0ee21a nomodeset rd_NO_LUKS LANG=en_US.UTF-8 rd_NO_MD  KEYTABLE=us SYSFONT=latarcyrheb-sun16 crashkernel=auto rd_NO_LVM rd_NO_DM rhgb  pcie_aspm=off biosdevname=0 console=tty0 console=ttyS1,19200n8
        initrd /initramfs-2.6.32-358.el6.x86_64.img
title Red Hat Enterprise Linux (2.6.32-279.el6.x86_64)
        root (hd0,0)
        kernel /vmlinuz-2.6.32-279.el6.x86_64 ro root=UUID=00f30f09-2bfb-4dde-8396-eea16c0ee21a nomodeset rd_NO_LUKS LANG=en_US.UTF-8 rd_NO_MD  KEYTABLE=us SYSFONT=latarcyrheb-sun16 crashkernel=auto rd_NO_LVM rd_NO_DM rhgb  pcie_aspm=off biosdevname=0 console=tty0 console=ttyS1,19200n8
        initrd /initramfs-2.6.32-279.el6.x86_64.img

步骤2:安全tty配置

键入以下命令:

# vi /etc/securetty

追加以下条目:

ttyS1

保存并关闭文件。

步骤3:Upstart配置

init是新贵的进程管理守护程序。

init是系统上所有进程的父级,它由内核执行并负责启动所有其他进程;它是自然父母死亡的所有过程的父母,并负责在死亡时收割它们。
由init管理的进程称为作业,由/etc/init目录中的文件定义。
输入以下命令来创建/etc/init/ttyS1.conf文件,输入:

# vi /etc/init/ttyS1.conf

附加以下配置选项:

start on runlevel [345]
stop on runlevel [S016]
 
respawn
instance /dev/ttyS1
exec /sbin/agetty ttyS1 19200 vt100-nav

保存并关闭文件。

步骤4:验证设定

重新启动服务器:

# reboot

使用串行控制台实用程序连接到控制台。