在后台启动 c 程序

在后台启动 c 程序

我想从终端在后台启动一个 C 程序。该程序充当蓝牙驱动程序,这意味着它必须在系统运行时保持打开状态。我尝试使用 nohup 和 start-stop-daemon,但在这两种情况下,c 程序都会收到 exit 命令并关闭。

如何从终端启动 C 程序,然后在后台运行?我想启动它,然后能够关闭 gui 上的终端(同时启动的 c 程序继续愉快地运行)。

谢谢!

答案1

strace听起来该程序需要一个控制终端才能运行(如果没有源代码,您可以找到)。

screen您可以通过(ot tmux)运行程序来为程序提供控制终端(即使将其作为系统引导的一部分启动) 。

screen cmd arg1 arg2

答案2

我认为要完全守护程序,你会这样做

nohup the_command args ... </dev/null >/dev/null 2>/dev/null &
disown

根据您的系统,您应该考虑在系统启动时使用 upstart 或 init 或类似的东西启动它。

相关内容