【问题标题】:Daemons & applications control [duplicate]守护进程和应用程序控制 [重复]
【发布时间】:2012-07-28 15:46:31
【问题描述】:

这是一个重复的问题: Differences in controlling daemons & applications 只有更新的标签,所以更多的人 可以查看和评论。


大家好,

关于这篇优秀的帖子:

What's the difference between nohup and a daemon?

我想问以下问题:

从我的终端启动应用程序后,该应用程序继续在后台或前台运行,我唯一可以与之交互的方法是从我的终端发送信号(假设标准输入仍然存在) .

但是,在启动守护进程后,我意识到可以通过其他方式控制它,例如查询它或重新启动它(arch方式):

# /etc/rc.d/daemon-name {start|stop|restart|status|...}

如果该功能内置于通用“守护程序框架”并作为特殊功能适用于每个守护程序进程,或者它只是旨在作为守护程序运行的进程必须在内部处理的规定,有人可以向我解释吗?

更重要的是,我们究竟如何能够使用它们的名称(即 sambad stop)从终端“控制”守护程序,而始终必须使用它们的名称来引用应用程序(即 kill -9 1234) ?

提前谢谢你!


【问题讨论】:

  • 现在可以关闭主题了。我基本上是在研究如何实现进程间通信,因为普通的 unix 信号不携带任何信息。

标签: linux bash unix process daemon


【解决方案1】:

这对于不同的守护进程是不同的。只需查看这些文件 (/etc/rc.d/*),看看它是如何完成的。

在 debian 上,大多数服务使用start-stop-daemon。 PID 存储在一个文件中,start-stop-daemon 向该 PID 发送信号。

【讨论】:

  • 即使映射如您所声称的那样,这些也不仅仅是简单的信号。 status 和其他命令强制守护程序在它已经运行时打印信息(!!)当启动后没有应用程序可以处理标志时..!
  • @Konos5 哪些守护进程和哪些命令?有很多方法可以实现这一目标。在我的机器status 上检查进程是否正在运行。
猜你喜欢
  • 2012-07-26
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-10-04
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多