Linux的系统服务是以daemon运行的,主要分为两大类daemon:
1)standalone:可以自行单独启动服务,如httpd、vsftpd等,它的特点是响应速度快,但资源占用高。
2)super daemon:一个特殊的daemon统一管理,当客户端没有请求时,各项服务不启动,直到有客户端请求时,super daemon才唤醒相应的服务。
daemon的启动脚本与启动方式
1)/etc/init.d/*:启动脚本放置处
2)/etc/sysconfig/*:服务的初始化环境配置文件
3)/etc/xinetd.conf 和 /etc/xinetd.d/*:super daemon的配置文件
4)/etc/*:服务的配置文件
5)/var/lib/*:服务产生的数据库
6)/var/run/*:服务的PID
standalone的启动关闭方式
首先把standalone的启动脚本放到/etc/init.d/目录下,然后就可以利用该脚本启动关闭该服务:
# /etc/init.d/syslog
Usage: /etc/init.d/syslog {start|stop|status|restart|condrestart}
你还可以利用service命令(效果和/etc/init.d/*一样):
service [service name] (start|stop|restart|status|...)
service --status-all
super daemon的启动关闭方式
super daemon本身是一个standalone服务,如下所示:
# /etc/init.d/xinetd status
xinetd (pid 3543) is running...
而由它管理的服务是super daemon,它们的配置文件在/etc/xinetd.d/*
下面看一个例子:
首先,编辑/etc/xinetd.d/rsync文件,设置disable = no,表示启动该super daemon
然后,重启xinetd这个服务:
# /etc/init.d/xinetd restart
Stopping xinetd: [ OK ]
Starting xinetd: [ OK ]
然后,就可以看到该服务已启动:
# cat /etc/services |grep rsync
rsync 873/tcp # rsync
rsync 873/udp # rsync
chkconfig - 设置开机启动daemon
chkconfig --list [服务名称] --查看
chkconfig [--level [0123456]] [服务名称] [on|off]
#查看httpd的配置情况
# chkconfig --list httpd
httpd 0:off 1:off 2:on 3:on 4:on 5:on 6:off
#查看在level 3下有哪些服务是自动启动的
# chkconfig --list | grep '3:on'
crond 0:off 1:off 2:on 3:on 4:on 5:on 6:off
httpd 0:off 1:off 2:on 3:on 4:on 5:on 6:off
irqbalance 0:off 1:off 2:on 3:on 4:on 5:on 6:off
microcode_ctl 0:off 1:off 2:on 3:on 4:on 5:on 6:off
mysqld 0:off 1:off 2:on 3:on 4:on 5:on 6:off
network 0:off 1:off 2:on 3:on 4:on 5:on 6:off
sshd 0:off 1:off 2:on 3:on 4:on 5:on 6:off
syslog 0:off 1:off 2:on 3:on 4:on 5:on 6:off
xinetd 0:off 1:off 2:off 3:on 4:on 5:on 6:off
#配置httpd在level为345的情况下自动启动
# chkconfig --level 345 httpd on
chkconfig除了可以设置系统服务之外,还可以添加自己的服务,如:
#vi /etc/init.d/myservice
#!/bin/bash
# chkconfig: 35 80 70
......
chkconfig --add myservice
chkconfig --del myservice
netstat - 查看系统开启的网络服务
netstat -tulp --找出目前系统开启的网络服务有哪些
netstat -lnp --找出所有的有监听的服务(包含socket状态)
参考文件:http://www.cnblogs.com/ggjucheng/archive/2012/01/08/2316661.html