什么是启动-停止守护程序,应该如何使用?

我正在try 自动运行一个特定的程序.无论何时系统启动,程序都应该运行.为此,我在/etc/init.d/个地点写 playbook .

推荐答案

它是一个用于管理系统级后台进程(守护进程)的启动和停止的程序.您可以通过为要启动的进程传入参数(例如创建/判断的pid文件)和命令参数来使用它.

然后,你要做两件事中的一件:

start-stop-daemon -S [other arguments] something

开始something,如果something还没有运行.如果它正在运行,什么也不要做.

start-stop-daemon -K [other arguments] something

something.如果something没有跑,什么都不要做.

man page提供了关于各种论点的更多信息.通常情况下,/etc/init.d/中提供了一个模板,该模板具有用于控制后台进程运行的init进程的其他命令.


这是什么意思?

启动停止守护进程--启动--后台--m--oknodo

  • --background=作为后台进程启动
  • -m=制作一个PID文件.当您的进程不创建自己的PID文件时,将使用此选项,并与--background一起使用
  • --oknodo=返回0,如果守护进程未执行任何操作,则返回1
  • --pidfile ${PIDFILE}=判断PID文件是否已创建
  • --exec=确保这些进程是这个可执行文件的实例(在您的例子中是DAEMON)

Linux相关问答推荐

如何在不使用LD_LIBRARY_PATH或RPATH的情况下运行链接到共享库的二进制文件?

在新环境中使用Unicode范围的sed表达式有问题

Perl/cpan: 找不到 JSON/Parse.pm @INC

Linux PREEMPT_RT:SCHED_OTHER 的性能优于 SCHED_FIFO.为什么?

使用 awk 将 csv 拆分为带有标题的多个文件

使用带有 gnome-keyring 的 Git 凭证助手作为 Sudo 时出错

全屏(Fullscreen)小部件

如何判断 Ubuntu 12.04 LTS 上是否安装了多个版本的 PHP?

Vagrant chicken-and-egg:与 uid = apache 用户共享文件夹

KDE 桌面效果中的 OpenGL 和 XRender 有什么区别?

如何像 Nautilus 那样从命令行挂载?

grep 时间命令输出

Linux:在目录下的文件列表中搜索特定单词

从linux命令行写入串口

一个进程如何拦截Linux上另一个进程的stdout和stderr?

Colored shell 脚本输出库

如何等待第一个命令完成?

我可以使用 awk 将所有小写字母转换为大写吗?

在类 Unix 系统中上次运行的 cron 作业(job)的详细信息?

如何在 docker 容器中运行 cron 作业(job)