服务的分类
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举例