服务的分类

linux服务

RPM包安装的服务

   独立的服务

   基于xinetd的服务

源码包安装的服务


RPM包安装的服务管理

独立服务的启动方式

1 /etc/init.d/ 独立服务名   start|stop|status|restart

 start|stop|status|restart

此方式是通过绝对路径调用执行文件的原理启动服务。两个目录是软链接的关系,此方式是管理服务的通用方式

2 service 独立服务名 start|stop|status|restart

此方式,只有redhat系列的linux系统才有


独立服务的自启动

(1) 命令方式

chkconfig --level 2345 on   // 设置在2345 运行级别自动启动即开机自启

chkconfig --level 2345 off   // 设置在2345 运行级别不自动启动

ntsysv  命令同样可以管理自启程序(redhat特有)

(2) 配置方式

把启动命令配置进  /etc/rc.d/rc.local  文件,由于/etc/rc.local文件是其软链接,所以修改任意其中一个,得到的效果是相同的。


基于xinetd的服务(此方式已经不被推荐使用了)

安装 yum -y install xinetd

在 /etc/xinetd.d/ 目录下找到要启用服务配置文件,修改其配置  on/off 一般都有此字样的项,保存,然后重启 xinetd

service xinetd restart


源码包服务管理

源码包安装的服务启动

使用绝对路径执行其启动文件,但是如何找到其启动文件呢,可以查看源码包的安装说明,查看启动脚本,及方法。


源码包安装的服务自启动

将启动命令写入/etc/rc.d/rc.local 文件

默认service命令和chkconfig命令是无法管理源码包安装的软件的。

配置service支持

因为service命令搜索的是 /etc/init.d/  目录,而源码包安装的软件,一般不会安装在此目录下,我们可以通过软链接链到此目录下来实现service命令管理源码包安装的软件。

配置chkconfig支持

(1)配置chkconfig支持管理源码包安装的软件,我们需要在源码包软件的启动文件中加上

# chkconfig:35 86 76

其中35是运行级别,86是启动顺序,76是关闭顺序。

启动顺序关闭顺序作何解释呢?我们可以查看 /etc/rc3.d/ 目录下有许多以S开头的文件,还有很多K开头的文件,S是start  K是kill  当要进入3运行级别的时候,会把S开头的都执行一遍,当要退出3运行级别的时候,会把K开头的都执行一遍,所以刚才那个启动顺序和关闭顺序可以任意写,但是不能跟此目录下文件的启动关闭顺序冲突。

(2) chkconfig --add apache  // 此处以apache举例