守护程序和服务之间有区别吗?


Answers:


7

守护程序和服务不相同。

“服务”可以指代守护程序或服务。

守护程序是始终在内存中运行以等待服务请求的服务的子集。

非守护程序服务通常由xinetd处理。xinetd侦听该请求,然后启动所需的服务来处理该请求。在为请求提供服务之后,该服务将再次停止。

典型的非守护程序服务:rsync vsftpd

典型的守护服务:MySQL Apache


1
xinetd的创建是为了服务于其他服务以节省资源,但并不使它们成为非守护程序。您的非守护程序示例包括一个deaemon ... vsftpd以d结尾,因为约定(但不是必需)在结尾用ad命名unix deamons以代表Daemon .... vsftp-daemon :-)
Bart Silverstrim'4


您今天仍然使用xinitd吗?我猜xinitd带来的麻烦多于其提供的帮助(今天)。
guettli

13

守护程序和服务是相同的。

但是,两者都不必绑定到端口。HALd是一个守护程序,它监视插入的硬件并正确地安装它。crond是一个守护进程,可以使火车保持准时运行。


因此,它们通常绑定到端口或操作系统级别的事件吗?
Blankman '04

2
@Blankman:守护程序有一项工作要做-如果没有,则不要运行。它必须从某个地方获取输入。一个常见的来源是网络,但它可能是经过的时间(cron)或各种外围连接总线(HALd)或...
Jonathan Leffler 2010年

2

是的 -守护程序在类Unix的框上运行,服务在Windows上运行。

十年前,守护程序无限期运行,而服务却没有。

几十年前,守护程序也没有无限期地运行。

所以,实际上,我的意思是 -服务与守护程序之间没有显着差异。

请注意,“ cron”是守护程序;它根本没有绑定到网络。


3
从概念上讲,它们是相同的。执行某些未附加到特定登录用户的后台任务的系统程序...
Bart Silverstrim'Apr

0

由于当今所有主要的Linux发行版都使用systemd,因此查找systemd关于它的内容是可行的:

man systemd

systemd是Linux操作系统的系统和服务管理器。

...

服务单元,用于启动和控制守护程序及其组成的进程。有关详细信息,请参见systemd.service(5)。

...

systemctl守护程序-reexec(重新启动systemd)

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.