Difference between revisions of "Daemons (简体中文)"

From ArchWiki
Jump to: navigation, search
(Move daemons list to sub pages.)
(Initscripts system: Remove as English Version.)
Line 23: Line 23:
  
 
有时 daemon 也会指在系统启动时运行,但是运行之后不会保留进程的程序。因为它们使用相同的启动关闭框架 (例如 {{ic|/etc/rc.d/}} 脚本),所以也叫 daemon. 例如 {{ic|/etc/rc.d}} 中的 ''alsa'' 和 ''cpufreq'' 提供了固定内核模块参数功能,但是完成后不会保留后台进程。
 
有时 daemon 也会指在系统启动时运行,但是运行之后不会保留进程的程序。因为它们使用相同的启动关闭框架 (例如 {{ic|/etc/rc.d/}} 脚本),所以也叫 daemon. 例如 {{ic|/etc/rc.d}} 中的 ''alsa'' 和 ''cpufreq'' 提供了固定内核模块参数功能,但是完成后不会保留后台进程。
 
==Initscripts system==
 
 
===开机时启动===
 
 
默认情况下,Arch Linux 设置了几个开机自启动的系统服务(守护进程),可以在[[rc.conf (简体中文)|rc.conf]]的{{ic|DAEMONS}}数组配置开机启动的系统服务。最初,这个数组应该像下面一行:
 
DAEMONS=(syslog-ng network netfs crond)
 
 
这些进程会按顺序依次启动。在系统服务名称前面加上{{ic|!}}即可禁止开机运行,而名称前加{{ic|@}}表示该进程可以后台启动而无需等待。
 
 
=== 手动启动、终止===
 
每一个守护进程都有一系列可以用特殊命令调用的操作:通常至少包括 {{ic|start}}, {{ic|stop}}, 和 {{ic|restart}}. 你可以运行这些命令通过:
 
# /etc/rc.d/''daemon-name'' {start|stop|restart|...}
 
一个完全等价的方法是:
 
# rc.d {start|stop|restart|...} ''daemon-name-1'' ''daemon-name-2'' ''daemon-name-3'' ...
 
 
可能还有其他控制命令,具体参见它们的文档,或者查看源代码。
 
 
===必要性===
 
只有在确实需要时,再添加更多服务。不过有些服务多数人都要用到,比如[[D-Bus (简体中文)|D-Bus]]。如果使用打印机。[[CUPS (简体中文)|CUPS]]也是必需的。用户需要自己把他们添加到{{ic|/etc/rc.conf}}。
 
 
===后台启动服务===
 
后台启动服务,指启动某个服务时,无需等待启动完毕,便可同时进行下一个操作。某些时候这样做可以节约开机时间。不要尝试把所有服务都设置后台启动。以下给出一个例子:
 
DAEMONS=(syslog-ng gensplash dbus hal network netfs @avahi-daemon @samba @crond @openntpd @cupsd @mpd)
 
 
后台启动''openntpd''(时间同步服务)可能导致同步出现错误。如果确实发生了,那就不要设置后台启动它。
 
 
===Rc.conf 图形前端===
 
[[Rc.conf GUI Frontends]]一文提供了图形化配置{{ic|/etc/rc.conf}}的工具。
 
  
 
== Systemd 系统 ==
 
== Systemd 系统 ==

Revision as of 09:45, 1 November 2012

摘要 help replacing me
本文介绍守护进程(系统服务)相关的知识。
相关页面
Category:Daemons and system services (简体中文)
如何编写rc.d启动脚本
rc.conf (简体中文)
翻译状态: 本文是英文页面 Daemon翻译,最后翻译时间:2012-10-09,点击这里可以查看翻译后英文页面的改动。

守护进程(daemon),指后台运行的、等待特定事件发生并提供服务的程序。典型的例子如网页服务器,等待网页传输请求并提供传输服务;又如ssh服务器,等待用户登入操作。许多守护进程提供不可见的服务,比如记录日志(syslog,metalog)、校准时间(ntpd)。

尽管实际意义有所不同,守护进程也可以叫做系统服务。实际上,后者似乎是个更好理解的名称。

有时 daemon 也会指在系统启动时运行,但是运行之后不会保留进程的程序。因为它们使用相同的启动关闭框架 (例如 /etc/rc.d/ 脚本),所以也叫 daemon. 例如 /etc/rc.d 中的 alsacpufreq 提供了固定内核模块参数功能,但是完成后不会保留后台进程。

Systemd 系统

显示运行中的单元:

$ systemctl list-units

使用 --all 选项可以显示所有可用单元。

启用服务器:

# systemctl start <name>.service

禁用服务:

# systemctl stop <name>.service

开机自动启动:

# systemctl enable <name>.service

停止开机自动启动:

# systemctl disable <name>.service

这里有更详细的介绍。

守护进程列表

此处是守护进程的不完全列表, 每个守护进程给出了 initscripts 使用的脚本和 systemd 使用的服务文件。

参见