我有一个具有root和可执行权限的可执行程序/ home / user / foo 。 foo 具有3个线程,并使用 printf 和 perror 执行输出。 该程序位于Linux 4.1.22-ltsi的嵌入式目标中。 我需要在目标启动时自动运行 foo 。 为此,我在文件 /etc/rc.local
中添加了以下行# new line
/home/user/foo > /dev/ttyS0 &
#old line
exit 0
Linux:rc.local中可执行文件的打印消失
结果,foo运行,但是打印有问题。 启动rc.local
之后,将出现打印件Starting /etc/rc.local Compatibility ...
,但在重新启动完成后已消失。重新启动输出后
Debian GNU/Linux 9 linaro-developer ttyS0
打印被消除。 命令 ps -aux | grep foo
显示tty是? 另外,我检查了当前的tty'控制台:
$ tty
/dev/ttyS0
我还在rc.local中尝试了其他一些选项,但它们根本不输出:
/home/user/foo 2>&1 &
和
/home/user/foo &