“inetd”(和“nc”)仅适用于作为守护进程编写的程序吗?

“inetd”(和“nc”)仅适用于作为守护进程编写的程序吗?

inetd使多个程序作为服务运行时,是否inetd 需要将程序编写为守护程序(例如,没有控制终端,没有交互式输入,...)?

或者可以inetd对非守护进程进行守护进程,类似于setid可以做什么?

nc顺便说一句,鉴于,同样的问题https://unix.stackexchange.com/a/500646/674

谢谢。

答案1

通常,设计为执行的应用程序inetd应该不是尝试让自己成为守护进程。inetd将在建立传入连接时执行该命令,该进程将作为 的子进程运行inetd,并且当会话结束时它可以终止。

所以,举例来说,你运行sshdvia inetd,但您需要传递-D标志以sshd防止它成为守护进程。

如果建立 2 个连接,inetd则将运行该程序的两个副本。

相关内容