服务(Service),通常被叫做守护进程(daemon)是运行在后台的一种特殊应用程序,通常是非交互的。可以被用来做任何事情,包括硬件、网络访问、监视、登录等等。所有的操作系统都使用一些服务来完成一些自动化的工作。即,这些运行都是后台自动运行的。
上面讲得服务是不区分操作系统的,不管是Windows也好,Linux也好,都差不多。
2.运行级别
运行级别(Runlevel),是操作的模板,作用是用来对某些守护进程进行分组管理,分组一般是依据功能划分或者根据限制使用的级别划分。对于基于Linux的Fedora8,主要的运行级别这样划分的:
运行级别0:停止;运行级别 1: 但用户模式 ; 运行级别2:没有NFS的多用户模式; 运行级别3:完全的多用户模式; 运行级别4:未使用;运行级别5:X11(即运行级别1+X Windows)模式;运行级别6:重启动。
大多数使用X-server的用户处在级别5上,多数没有X-server的服务器运行在级别3上。通常级别1上没有服务在运行。
在我自己的F8上面,运行system-config-services可以看到,所有的服务都运行在级别5上。在“编辑运行级别”中有3、4、5可以选择。这很正常,因为我当前用户的运行级别就是5,这个可以通过输入“# /sbin/runlevel”进行查看,我的显示结果是N 5。
可以通过下面的方法使系统在下次启动的时候采用自定义的运行级别。
# cat /etc/inittab | grep :initdefault:
id:5:initdefault:
也可以编辑文件 /etc/inittab,改变其中 initdefault的值。
运行级别切换的方法。 运行 # /sbin/init RUNLEVEL ,使用适当的级别数字替换其中的 RUNLEVEL。需要特别注意的是,当从“运行级别5”切换到其他时,可能会杀死X-server和整个GUI,所以,最好在文本控制状态下进行切换。
3.对服务的操作
禁用/启用服务。对于每个服务,在每个运行级别上都要被设置为On或者Off,即启用或者禁用。为了查看在每个运行级别上的服务状态,输入: /sbin/chkconfig –list
例如,我的F8的运行结果是这个样子的:
yum-updatesd 0:关闭 1:关闭 2:启用 3:启用 4:启用 5:启用 6:关闭
所以,如果要完全改变一个服务的状态,需要在不同运行级别上分别操作。
改变运行级别的2个方法:1.system-config-services图形界面 2.使用命令/sbin/chkconfig --level
控制服务。我们不管服务是怎么被默认设置为启用或者禁用的,每个服务都可以在运行时被启动或者停止。要查看正在运行的所有服务可以使用 /sbin/service –status-all
要单独查看某个服务可以使用 /sbin/service SERVICENAME status,其中 SERVICENAME是想要查看的服务的名字。将上面命令中的status替换为start, stop, reload, restart,就可以对其进行控制了。
其实,所有的工作都可以在system-config-services下的图形界面下完成,但是有的时候GUI出了问题,理解这些命令就很有用了。
4.具体服务介绍(基于我的F8)
1)建议不要停用下列服务:haldaemon(和硬件打交道的), messagebus(提供IPC服务,广播系统事件或者其他消息), klogd, network(上网), rsyslogd(系统日志相关)。
2)ConsoleKit 提供快速用户切换,自动挂载设备等功能,还有F8独有的Pulse Audio,关掉的话可能影响我听歌。 开着。
3)NetworkManager, NetworkManagerDispatcher 在不同的网络连接方式之间进行自动切换。如笔记本的无线和各种有线的连接方法之间切换。我就一种上网方式,当然不开。本来也没有启动 : )
4)acpid 一种高级的电源管理,主要是支持挂起、休眠、唤醒等。网上大多数人说这是笔记本才用的着,我看不一定,我台式机就不能休眠了?开着。
5)anacron, atd, cron 这3个的目的差不多,有点像Win的“计划任务”。一般用户cron可以开着,服务器最好开着。atd 和anacron对个人用户和笔记本没有什么用,关了吧。
6)autofs 挂载可移动设备用的,光盘、USB之类的,没的说。开着。
7) avahi-daemon 对个人用户没有什么用吧,好像和某种服务Zeroconf有关,我目前用不着。关了。
8)bluetooth, hcid, hidd, dund, pand 全部和蓝牙有关。hcid管理设备,hidd提供对输入设备的支持,dund提供蓝牙拨号上网,pand提供蓝牙介入局域网。我没有蓝牙。关掉。
9)btseed ,bttrack 和bt下载有关的。自动做种,自动找源。我目前没有bt。就是有一般也不需要这2项,关了。
10) capi 对ISDN硬件提供支持。我没有,关。
11) cpuspeed 控制cpu频率的。我记得我的CPU和主板好像都支持。开着吧
12) crond 类似计划任务。关。
13) cups 为linux提供第三代打印功能.我没有打印机。关。
14)firstboot 安装后第一起启动时,检查/etc/sysconfig/firstboot是否存在用的。关了吧。
15) gpm 提供字符界面对鼠标的支持。一般运行级别5下,是不需要开着的。在运行级别3下一般需要开着。我怕图形界面哪天崩溃......本来默认没有开,我把它开了。
16)httpd apache http服务器用的。我目前不准备建什么服务器。关。
17) iptables 提供软件的防火墙作用。开着吧,谁让咱们没有硬防火墙呢,只好靠软的。
18) ip6tables IPV6版本的防火墙。我还处在IPV4,关。
19) irattach 对红外接口提供支持。我没有红外接口。关。
20) irqbalance 对多CPU或者多核CPU提供性能增强支持。我就一个CPU,还不是多核的,关掉。
21) isdn 和ISDN猫有关,连网用的。我没有。关。
22) kudzu 检测硬件的改动的。不应该停!
23) lirc 对一种红外设备LIRC提供支持。我没有。停。
24) lm_sensors 监视主板传感器的各种健康指标。我有,但是不用。停吧。
25)mdmonitor 监视 RAID 或者 LVM, 停不停随便吧。我的默认没有启动,还开它干嘛。
26)........................................................................
太多了,累死,不想写了。看看自己电脑上默认开启的都是什么吧,没有开启的就不看了。
27)nasd 和KDE声音相关
28)netfs 挂载NFS的。关了。
29)network 想上网就开着。
30)nfslock 网络文件共享的一种方式。关了。
31)pcscd 智能卡,智能读卡器相关支持。巧了。我有,开着吧。
32) restorecond 开着吧,提高安全性,自带和防火墙相关
33) rpc* 和rpc开头的几个,关了。
34)sendmail 我一个个人用户,不建邮件服务器什么的。收邮件也去网站。关了。
35)setroubleshoot 防火墙相关。开着
36)sshd 我不是服务器,开着还有安全隐患。个人用户,不关了多傻啊,难道等着别人控制你?
37) udev 设备管理。一定要开着。
38)yum-update 系统更新。像我这样天天上网的,开着吧,想更新就更新。
终于写完了,累死了。2008-01-17 22:47