Centos7之前,我们都通过service命令来管理(启动、停止、重启)服务,通过chkconfig来管理服务的自启动; 然而,这两个命令并不属于同一个软件包, service命令属于initscripts软件包,chkconfig是一个单独的chkconfig软件包。
service命令非常好用,但是服务名和操作的顺序不太符合一些人的口味,如: service mysql start ; 有些人就经常写做: service start mysql
而,chkconfig虽然可以添加、查看服务,但是添加的服务脚本也有一点苛刻,脚本中需要添加:
1 2 |
# chkconfig: 2345 20 80 # description: some desc |
别以为这是注释,没有的话,chkconfig add是不认的,如果不chkconfig add的话,chkconfig也list不出来你的服务的。
Centos7中服务的管理使用的是systemctl, 他是systemd软件包中的一个命令,该命令不仅仅管理服务,包括关机都能管
几个关键路径:
- 服务脚本目录: /usr/lib/systemd/system/
- 服务自动启动目录:/etc/systemd/system/
systemctl enable xxx的时候就在这个目录下添加一个软连接到实际的脚本
参考资料: http://www.linuxidc.com/Linux/2015-04/116648.htm
systemd-vs-sysVinit-cheatsheet