Articles of 守护进程

守护进程应该通过inetd运行多复杂?

守护进程通过inetd启动的一般规则是什么? 目前,在我的服务器上, sshd , apache和sendmail被设置为始终运行,其中简单的* NIX服务被设置为由inetd启动。 我是唯一一个在我的计算机上使用ssh的人,并且入侵尝试不是问题,因为我将它运行在非标准端口上,而且我的HTTP服务器每天可能获得5次非GoogleBot 。 我的问题是,与通过超级服务器守护进程运行复杂守护进程(如sshd或apache)相关的性能命中有什么好处,以及以这种方式运行自己的守护进程(如果有的话)是成功还是失败?

我怎样才能find什么是开始crond?

我需要在命令行中停止crond。 (我正在编写一个脚本,需要停止它,做一些工作,然后再次启动它,我宁愿不删除并replacecrontab文件,因为它更容易出错。) 但是,当我运行service crond stop或sudo /etc/init.d/crond stop ,它停止,但不到一分钟后再次启动。 [root@prod-sphinx1 ~]# service crond stop;date Stopping crond: [ OK ] Wed Oct 15 05:48:50 UTC 2014 [root@prod-sphinx1 ~]# ps uefxxx | grep crond root 11891 0.0 0.0 61192 788 pts/0 S+ 05:49 0:00 \_ grep crond HOSTNAME=sphinx01.us-east-1.zoomingo.com TERM=xterm-256color SHELL=/bin/bash HISTSIZE=1000 SSH_CLIENT=50.46.219.220 51260 22 SSH_TTY=/dev/pts/0 USER=root LS_COLORS= EC2_HOME=/home/ec2 […]

在Gentoo Linux启动时执行特定的bash脚本

我拥有运行Gentoo Linux的VDS,我很好奇如何在启动VDS时执行特定的bash脚本。 我只想在启动时启动apache2并运行两个瘦实例。

当其中一个守护进程死亡的时候执行shell脚本的shell脚本?

我只需构build两个运行在不同端口上的守护进程实例。 假设他们都为某些应用程序提供关键任务。 我怎么能做一些自动任务(如shell脚本)执行检查守护进程时,其中一个服务失败? 什么样的脚本可以随时检查守护进程的生活,并且如果其中一个守护进程偶然停止,可以执行一些其他的工作?

/etc/init.d中的脚本不会在启动时运行(Ubuntu 8.10)

我在Ubuntu 8.10上 使用sudo /etc/init.d/xbindkeys start从命令行调用脚本时运行。 以下是它的外观: #! /bin/sh PATH=/sbin:/bin:/usr/sbin:/usr/bin:/usr/local/sbin:/usr/local/bin case "$1" in start) xbindkeys ;; stop) ps aux | grep xbindkeys | head -n1 | awk '{print $2}' | xargs kill ;; restart) $0 stop $0 start ;; esac 我以前运行sudo update-rc.d xbindkeys defaults来创build符号链接。 为了确保链接正确,我尝试了chkconfig | grep xbindkeys chkconfig | grep xbindkeys ,它返回: xbindkeys 2345 但是,重新启动后,我没有看到ps […]

用于logging脚本输出的init脚本

如何才能做到这一点? 我知道这非常简单,并且包括将&或&>等附加到启动init脚本的实际命令。 但是,什么是最好的方法,以及如何确保init脚本自行分离,假设日志文件是/var/log/customDaemon.log? 这是我的初始化脚本。 我也不确定脚本中的方法是否整齐或只是一个讨厌的黑客。 #!/bin/bash # # /etc/rc.d/init.d/customDaemon # # description: "The Daemon" # processname: customDaemon # pidfile: "/var/run/customDaemon.pid" # Source function library. . /etc/rc.d/init.d/functions start() { echo "Starting customDaemon" /var/customDaemon &> /dev/null & return 1 } stop() { echo "Stopping tweriod" prockill customDaemon return 2 } case "$1" in start) start ;; stop) […]

Linux实用程序和守护程序的源代码

我在哪里可以findLinux实用程序和守护程序的源代码。 基本上我想知道Linux内核以外的源代码库。

我应该在前台(而不是作为守护进程)显式运行程序,或者在configurationupstart守护进程时期望fork?

许多程序允许以守护进程模式(通常是默认模式)运行,或者使用诸如-f的标志在前台显式运行它。 现在当configuration新贵运行这样的程序,我可以做 exec foo -f # run in foreground 要么 expect fork exec foo # automatically runs as a daemon 有没有理由select一个呢? 我觉得在前台运行一切都要容易得多,让新手能够处理这些stream程,但这有什么不利之处?

用Django调度任务

我有一个Django网站,我想定期运行一段Python代码。 什么将是一个很好的方法来做到这一点? 我知道我可以cron ,但我更喜欢Django的解决scheme。 我知道有一个叫做celery的模块,它应该这样做,但是它需要安装RabbitMQ并将其configuration为与Apache交互,这是另一个需要维护的事情,我宁愿避免这种情况。 有什么build议么?

守护程序无法从结构脚本或启动时启动 – 仅交互式启动

我在/etc/init.d中有一个守护进程脚本,它使用tcpdump命令执行一些后台数据包logging。 脚本使用sudo /etc/init.d/packetlog start使用交互式shell 启动正常 当我通过我的结构脚本(下面)执行相同的命令时,该命令成功返回,但进程没有运行。 def startpacketlog(): sudo(r'/etc/init.d/packetlog start') 除此之外,服务不会像我预料的那样在启动时自动启动。 一些技巧来解决这个将不胜感激 脚本在这里,并从这个原始的修改 更新这似乎是一个普遍的问题,在这台主机上使用fabric启动任何服务。 当启动apache2服务时,我得到同样的问题。 尽pipe我可以成功地停止使用结构的服务。 更新2重新阅读文档和一些实验后,下面的修改解决了这个问题。 (这会禁用远程伪terminal,不pipe是什么) def startpacketlog(): sudo(r'/etc/init.d/packetlog start',pty=False)