Linux控制台已更改,打印正常,请阅读NOK

时间:2017-03-15 16:39:36

标签: linux console kernel tty cmdline-args

我正在办公室的一个小型嵌入式Linux平台上工作,我必须将默认控制台从ttyS0更改为另一个ttySx。 ttyS0已启用,是默认控制台。 我启用了其他ttyS,成功探测了它,我已经给它ID = 4,这意味着现在我可以正确地看到它为/ dev / ttyS4。

所以我修改了cmdline:

CMDLINE=...console=ttyS0,921600n8 console=tty0...

CMDLINE=...console=ttyS4,921600n8 console=tty0...

uarts连接到FTDI芯片。 使用console = ttyS0,我可以在这个shell上成功读/写。 使用console = ttyS4,我可以看到内核打印的内容,但无论我写什么都被linux忽略。

所以我检查了新ttyS4的TX / RX。我在这个com端口打开了一个putty会话。登录ssh以访问linux文件系统我做了一些测试:

echo 1234 > /dev/ttyS4        
echo 1234 > /dev/console

以上两个命令都在对应于ttyS4的putty窗口上成功打印“1234”。

然后:

cat /dev/console             
cat /dev/ttyS4

以上cat命令都成功显示了我键入的内容在我的腻子窗口上输入。 这意味着电气连接以及ttyS4的驱动器运行良好。 但是,如果我尝试在这个putty窗口中访问文件系统,我不能。输入enter将只打印一个新的空行,没有别的。 这就像新的console = ttyS4不会转发我写入linux的数据。

当我输入cat / proc / cmdline

时,我可以看到新的console=ttyS4,921600n8 console=tty0

任何帮助表示感谢。

1 个答案:

答案 0 :(得分:1)

控制台只是输入和输出设备。如果要将它们用于shell登录,请在它们上启动<div class="confirmation-modal"> <p class="confirmation-message">This is a big message that takes up a bunch of space. Yes indeed. Do you like it?</p> <div class="buttons"> <button>Yes, I'm Sure</button> <button>Cancel</button> </div> </div>

使用SysVinit,您可以通过编辑getty并在那里复制或取消注释一行来完成此操作:

/etc/inittab

使用systemd,您可以运行

4:2345:respawn:/sbin/getty 38400 tty4