ITEEDU

can't access tty 问题

系统在进入SHELL环境时,会打出下面这一句出错信息:

/bin/sh: can't access tty; job controll off

虽然不影响使用,但终究不够完美。

产 生这个错误的原因是我们的SHELL是直接运行在内核的console上的,而console是不能提供控制终端(terminal)功能的,所以必须把 SHELL运行在tty设备上,才能消除这个错误。解决问题的办法是使用正规init机制,在执行SHELL前打开tty设备。

inittab中/bin/sh前加上对应tty设备就可以了。

tty1::askfirst:/bin/sh 

但前提是tty设备是存在的,在/etc/init.d/rcS 文件中用了mdev后会自动在dev目录中生成可用设备,一般都有ttyX。如如没有就只有自己mkmod创建了。