遇到这个问题,百度之后,发现csdn有解,感谢carbonink。
1、新:处理器更换为CX92745,Linux version 2.6.32
老:Linux version 2.6.19.2
2、应用程序EthHV在之前平台可在后台正常运行 启动脚本中调用rc.local脚本,执行/test/EthHV &后,该应用正常后台启动
【问题】
1、登陆后,手动执行“/test/EthHV & ”
a、应用正常运行一段后,会卡住不动,按回车后会提示“[1]+ Stopped (tty input) /test/EthHV”在后台暂停,执行fg,EthHV移至前台才可正常继续运行。
b、或者新建脚本,脚本中调用/test/EthHV &,执行脚本,该应用正常在后台执行,不会出现a的问题。
c、或者执行 /test/EthHV < /dev/null & 重定向输入,该应用正常在后台执行,不会出现a的问题。
请问以上是什么情况造成,能有办法让手动运行“/test/EthHV &”后能正常后台执行吗?
2、在/etc/init.d/下新建S98CX,其中加入"/test/EthHV &"或者"/test/EthHV < /dev/null & ",重新启动,该应用未在开机后启动。执行ps,看不到EthHV。
a、如S98CX中修改为"/test/EthHV"可正常运行。
请问如何能让该应用在开机后正常运行于后台。
现在发现是因为busybox的原因,在inittab中,ttyS0::askfirst:/bin/ash --login执行后就会将所有后台kill,在此之前后台应用有执行。怎么木有人知道怎么解决这个事情啊????????
题已解决,inittab中将
ttyS0::sysinit:/etc/init.d/rcS
ttyS0::askfirst:/bin/ash --login
修改为
::sysinit:/etc/init.d/rcS
ttyS0::askfirst:/bin/ash --login
即可
原因如下:
ttyS0::sysinit:/etc/init.d/rcS (其中sysinit表示启动是调用)
之后调用ttyS0::respawn:-/bin/ash
是kill了之前的shell然后重新启动一个,所以后台调用的程序无法执行。

本文描述了在BusyBox环境下,如何解决特定后台进程被意外终止的问题,并提供了具体的解决方案,包括修改inittab配置。

1012

被折叠的 条评论
为什么被折叠?



