原文
Managing Services in Fedora
Mauriat Miranda (http://www.mjmwired.net/contact/ )
Other Guides/Resources
Published: 28 February 2006 (updated: 28 February 2006 )
前言
本文介绍如何控制Fedora的服务, 包括对服务和运行级别的解释,以及如何设置和管理服务。
服务进程
服务(service)经常被称作守护进程(daemon),是一种特殊的应用程序,他们运行在后台,并且通常不需要与人交互。服务可以用于系统的方方面面, 比如硬件, 网络访问,系统监控以及日志等等。任何操作系统都会使用一系列服务来实现自动化执行某些操作。
运行级别
某个运行级别(runlevel)是指一种系统的工作模式,用来组合特定的服务(守护)程序以实现某种目的或者提供对系统的受到限制的使用。对基于Fedora/Redhat的Linux系统,主要的运行级别有
- runlevel 1: 单用户模式
- runlevel 2: 多用户模式
- runlevel 3: 支持网络的多用户模式
- runlevel 5: 支持网络以及图形界面的多用户模式 (runlevel 3 + X Window System "the GUI").
如果安装了X-server,大多数用户会使用runlevel 5;否则的话,一般使用runlevel 3. 在runlevel 1模式下,一般不会运行服务程序。
要查看当前使用的是什么runlevel下,可以运行如下命令:
#/sbin/runlevel
要确定系统下次启动时会使用什么runlevel,运行如下命令:
# cat /etc/inittab | grep :initdefault:
id:5:initdefault:
上面的输出,说明系统下次启动时会使用runlevel 5.
可以编辑/etc/inittab文件来改变initdefault,比如把5改成3。
如果要切换到其他runlevel,可以运行如下命令(请把RUNLEVEL替换成合适的值,比如3,5等等)
#/sbin/init RUNLEVEL
注意:如果从runlevel 5切换到其他运行级别,X-server进程以及所有的GUI界面都会被杀掉。所以在切换运行级别前,请确保你正在使用的是文本控制台(CTRL-ALT-F1, F2, F3, F4)。
如果不想修改/etc/inittab,而在启动时想使用某一runlevel,可以在Grub菜单中,给kernel所在行的最后加上想要的运行级别数:在启动的Grub菜单界面中,高亮选中想要启动的系统,按字母E键,定位到kernel坐在行的最后,加上3或者5,然后按回车键确认,最后按字母B键启动系统。
启用以及禁用服务
需要对每一个服务程序在每个运行级别上单独设置启用(ON)或者禁用(OFF)状态。
要查看所有服务在每个运行级别上的启用状态,可以运行如下命令:
#/sbin/chkconfig --list
要在某个运行级别上设定哪些服务启用,可以在图形界面下运行system-config-services 或者在命令行下运行ntsysv (旧版本的Fedora没有system-config-services 命令,而是使用serviceconf 来代替)。
如果需要手动启用某项服务,可以使用chkconfig命令。如下所示的命令为运行模式3和5同时启用了crond守护进程:
# /sbin/chkconfig --level 35 crond on
可以指定--level为1,2,3,4,5或者它们的任意组合。如果要禁用服务,把on替换为off即可。更多信息可以运行man chkconfig 查看帮助。
控制服务
不管一项服务是如何设置的,缺省是启用还是禁用,我们都可以在系统运行时随时启动、停止以及管理它。
要查看当前正在运行的服务,运行如下命令:
# /sbin/service --status-all
如果要单独查看某个服务,比如crond,使用如下命令即可:
# /sbin/service crond status
crond (pid 1604) is running...
选项status可以替换为start, stop, status, reload, restart。对有些服务,有时还有更多选项可用。例如:
[root@charon ~]# service crond
Usage: /etc/init.d/crond {start|stop|status|reload|restart|condrestart}
[root@charon ~]# service crond stop
Stopping crond: [ OK ]
[root@charon ~]# service crond start
Starting crond: [ OK ]
[root@charon ~]# service crond restart
Stopping crond: [ OK ]
Starting crond: [ OK ]
所有位于/etc/init.d目录下的服务都可以使用这种方式来控制。除此之外,还有另外一种方式:
# /etc/init.d/crond status
实际上,上面提到的所有功能,都可以使用图形界面来实现(system-config-services )。不过当图形界面出现问题或者没有图形界面可用时,掌握上面提到的命令就会很有帮助了。
最后
以上就是有魅力山水最近收集整理的关于管理Fedora的服务的全部内容,更多相关管理Fedora内容请搜索靠谱客的其他文章。
发表评论 取消回复