Linux重定向console口控制台

系统 Linux
本文主要是向大家介绍了如何在Linux系统里重定向console口控制台,通过作者详细的步骤讲解,相信会给读者们带来帮助!

Linux重定向console口控制台的具体操作步骤如下:

首先,因为Linux系统的版本不一样,重定向规则也稍有不同。所以这里只以Fedora13版的Linux系统来说明,下文以Linux自称。

Linux从启动到启动完成的所有输出均复制到Com口上,一共需要修改3个文件。在此之前还要确认/sbin/agetty文件是否存在,此文件用来把系统的输入输出映射到其它设备上。

1.首先在 /etc/inittab里面添加如下内容,最后一行另加一行加上:

sc:2345:respawn:/sbin/agetty ttyS0 1152000,115200 xterm

“sc”为改行ID,“2345”指改行的运行级别是2、3、4、5级;“respawn”是使命令退出后再执行一次,以便其他用户能够登录;“/sbin/agetty ttyS0 9600 vt100”表示具体的命令,即通过他来执行打开串口/dev/ttyS0(COM1),后面是波特率和终端模式

xterm是一个X Window System上的标准虚拟终端。用户可以在同一个显示器上开启许多xterm,每一个都为其中运行的进程提供独立的输入输出(一般来说此进程是Unix shell)。

2.修改/etc/securetty里面的内容:

第2行另加一行加上:ttyS0

该文件是允许root身份登录的tty设备列表,这些设备由/bin/login程序读取,为了使用户能以root身份通过串口登录,需要在该文件中添加“ttyS0”,说明系统认为这里的COM1是安全的;

3.修改/etc/grub.conf文件里面的内容:

重定向grub:

在#Enable Serial Console下另加一行(有时可能有误差)加上:

serial --unit=0 --speed=115200 --word=8 --paity=no --stop=1 
terminal --timeout=10 serial console 
serial

初始化一个串口设备。

重定向console:

在/etc/grub.conf文件中kernel语句本行加上:

console=tty0  console=ttyS0,115200n8

其中“ttyS0”,“0”表示串口使用COM1;“9600”表示波特率为9600bps;“n”表示无校验位;“8”表示有8位数据位。

其实Linux启动时的信息都是由KERNEL显示的,缺省情况下启动完毕了后init再运行mingetty来提供6个虚拟终端来登陆系统,这可以在/etc/inittab文件中清楚地看到。其实login和内核是没有关系的,所以如果只是在内核中加入参数使其能从COM口交互式地操作并不代表能从超级终端登录系统,我们需要另外运行一个提供从串口登录能力的程序,这个程序就是agetty,它是属于util-Linux软件包中的一员,大家可以参考其man手册页以获得更多的信息,这些信息在其他的文档[1][3]中也都提及到了。

COM口的传输距离有限制,普通的线缆只有15米的有效距离,建议使用5类双绞线,可以扩展到50米仍能正常操作;

一般想使用root从ttyS0登录,默认的这是不行的,我们需要把该终端加入到文件/etc/securetty中,就是说终端ttyS0是安全的终端,可以使用root登录; 如果服务器长时间开着的话,最好每次都使用exit退出该终端,因为如果不退出来的话,下次再登陆可能会出现输入乱码导致终端不可用等问题,而在登录提示符下输入乱码则无关紧要;

如果你是通过这种方法管理一台实际24X7开着的服务器的话,你可能会有时发现在终端中按回车没有任何反映,有一种可能性就是系统在停电后再开机出现不能启动NFS和sendmail之类的服务,就这样卡在那里死锁住了,这在电源不稳定的情况下尤其多见,所以一定要给你的Linux服务器接上UPS不间断电源,或者在系统BIOS里设置断电后不再启动系统(如果它不是太重要的话),在这种情况下只有按键盘重新启动或者直接断电再重新启动一次,检查启动过程到底发生了什么事情,一般只需要检查一遍硬盘就没有问题了;

如果你的ttyS0出现乱码没有办法使用的话,可以尝试着从网络登陆,把/etc/inittab中ttyS0那一行注释,使用"init q"命令停止通过inittab启动的agetty,然后再重新取消/etc/inittab中的注释,再次"init q"命令启动agetty,不出意外就能恢复正常了。

【编辑推荐】

  1. Linux编译声卡驱动
  2. 五款优秀的Linux磁盘加密工具
  3. Linux下MySQL数据库开发技术
  4. Linux上构建MRTG流量监控中心
  5. 2011春季不得不尝试的4款Linux发行版
     
责任编辑:冯宇 来源: Linux社区
相关推荐

2011-07-06 15:25:33

Windows控制台

2010-03-22 18:42:23

2010-12-21 14:32:43

操作控制台

2010-12-28 10:36:41

Linux

2010-03-05 09:34:01

2010-03-01 13:54:57

2009-06-15 09:50:34

JBoss控制台

2020-07-27 07:41:23

Linux重定向数据流

2011-08-08 10:55:14

IOS 控制台 Consol

2018-10-30 09:20:00

Linux控制台命令

2019-08-23 09:58:18

Linux控制台命令

2022-08-08 09:34:33

Linux串行控制台

2023-02-02 09:33:04

Linux控制台程序

2018-09-25 10:15:30

Linux虚拟控制鼠标

2010-12-14 15:07:15

ICMP路由重定向

2011-07-12 15:18:01

SQLite数据库引擎

2011-07-27 13:59:04

2011-07-11 09:57:19

WINDOWS控制台DOS命令

2017-03-15 18:54:32

Linux主机控制台

2021-06-17 11:34:54

SLS 阿里云
点赞
收藏

51CTO技术栈公众号