服务其实也是一款软件,只不过这个软件可以被其他软件引用或者依赖,也就是说这款软件为其他软件提供服务,所以叫做服务。
有一些服务是相互依赖的,有一些是独立的服务,不依赖其他服务。
2.1.rpm包默认安装的服务,
独立的服务--就在内存中
基于xinetd服务----xinetd本身是独立的在内存中,然后它管理一堆服务,由xinetd响应被要求的服务。被要求的服务是没有在内存中的,也就是没有运行,只有当xinetd调用它的时候才会形影,所以响应时间比较慢
2.2源码包安装的服务(相当于外来的)
服务启动:就是在当前系统中让服务运行,并且提供功能
服务自启动:就是让服务在系统开机或者重新启动之后随着
系统的启动而启动服务。
注意是rpm包才能查得到,因为系统查询是否安装了,是需要去这个/etc/rc.d/init.d/,或者/etc/init.d/(是上一个目录的软连接)目录下找相关的启动程序的,而源码包安装的位置是一般是/usr/local/下,所以查看服务是否安装一般情况下,可以去这个目录下,找到服务,看能不能启动
chkconfig--list #chkconfig是checkconfig的缩写
/etc/init.d/ 独立服务启动脚本位置和/etc/rc.d/init.d/这两个位置是软连接,写那个都行
/etc/sysconfig/ 初始化环境配置文件位置
/etc/ 配置文件位置
/etc/xinetd.confxinetd配置文件
/etc/xinetd.d/ 基于xinted服务的启动脚本
/var/lib/ 服务产生的数据放在这里
/var/log/ 日志
/etc/init.d/独立服务名 start|stop|status|restart
service独立服务名 start|stop|restart|status #红帽子专有系列
service--status-all 显示所有系统中所有已经用rpm安装的服务的状态
5.3.1..第一种方式
设置自启动:
chkconfig --level 2345 httpd on #这个仅仅是设置了下次开机或者重启自启动,
默认级别就是2345(系统的默认级别),所以可以省略,直接用chkconfig httpd on
关闭自启动:
chkconfig httpd off
chkconfig [--level 运行级别] [独立服务名] [on|off]
5.3.2.第二种方式:(建议)
修改/etc/rc.d/rc.local的文件
在这个文件中加上这么一行/etc/rc.d/init.d/服务名 start
因为这个文件每次启动的时候都会被系统读取,所以在这个文件中加入这个
一行,自然也会读取这个命令,所以就会自启动了。
5.3.3.第三种方式:
使用ntsysv命令管理自启动,会出现这个图像化界面
如果想要自启动,就可以在前面的方括号里面,加上*号
否则按下空格,*号就会消失了,就取消自动启动了
这个命令可以管理独立服务和基于xinted服务的服务
这个家伙同样是红帽子专有,所以chkconfig启动是标准命令
现在基于xinted越来越少。一般来说只有不太安全的telnet(远程服务)现在都使用ssh服务了,网络备份服务sync,rsync。所以在这里就不说了,因为基本没什么用。
使用绝对路径,调用脚本来启动。不同的源码包的启动脚本不同,
可以查看源码包安装说明,查看启动脚本的方法。
比如:/usr/local/apache2/bin/apahectl start|stop #没有重启命令,先关闭在启动就行
修改/etc/rc.d/rc.local的文件,加入一行
/usr/local/服务名路径 start #前面已经说过,这个文件会开机自动读取,所以也会自动执行相应的命令。
7.3.1.让源码包的apache服务能别service命令管理启动
ln-s /usr/local/启动脚本 /etc/init.d/启动脚本文件名
#这一行的作用是当service命令来这个目录下查找的时候可以找得到
7.3.2.让源码包的服务能被chkconfig与ntsysv命令管理自启动
◆vi /etc/init.d/服务的启动脚本
#编辑这个启动脚本
加入这两行注释
#chkconfig:35 86 76
#Description:source package apache
注意:这是两行注释,就像编写shell脚本一样,必须加上这两行注释,才能被chkconfig与ntsysv识别,
下面解释它的格式:
chkconfig :运行级别 启动顺序关闭顺序
Descriptio:source package apache
运行级别是系统的运行级别:35,的意思是在系统的3,级别和5级别上可以执行这个操作,至于启动顺序就是见下图
如果是3级别和5级别,那么就分别进入rc3.d和rc5.d目录下面去找,比如我打开rc3.d,目录如下图:
如果是以s开头的文件就是开机的时候自启动顺序,那么以k开头就是关机的时候,服务关闭的顺序,所以启动顺序和关闭顺序,也是如此,只要和上面的数字不重复就行。
◆
编辑完这个文件之后
执行
chkconfig--add apache
#将apache服务添加到chkconfig序列,就能用chkconfig管理源码包服务了
chkconfig--del apache #在chkconfig序列减去这个服务,