CentOS6到CentOS-7变化
使用CentOS-7最直观的变化就是服务管理了。这里介绍一下。
services使用了systemd来代替sysvinit管理
systemd是Linux下的一种init软件,由Lennart Poettering带头开发,并在LGPL 2.1及其后续版本许可证下开源发布。其开发目标是提供更优秀的框架以表示系统服务间的依赖关系,并依此实现系统初始化时服务的并行启动,同时达到降低Shell的系统开销的效果,最终代替现在常用的System V与BSD风格init程序。
与多数发行版使用的System V风格init相比,systemd采用了以下新技术:
采用Socket激活式与总线激活式服务,以提高相互依赖的各服务的并行运行性能;
用cgroups代替PID来追踪进程,以此即使是两次fork之后生成的守护进程也不会脱离systemd的控制。
从设计构思上说,由于systemd使用了cgroup与fanotify等组件以实现其特性,所以只适用于Linux。
systemd的服务管理程序:
systemctl是主要的工具,它融合之前service和chkconfig的功能于一体。可以使用它永久性或只在当前会话中启用/禁用服务。
启动一个服务:systemctl start postfix.service 关闭一个服务:systemctl stop postfix.service 重启一个服务:systemctl restart postfix.service 显示一个服务的状态:systemctl status postfix.service 在开机时启用一个服务:systemctl enable postfix.service 在开机时禁用一个服务:systemctl disable postfix.service 查看服务是否开机启动:systemctl is-enabled postfix.service;echo $? 查看已启动的服务列表:systemctl list-unit-files|grep enabled
原文链接:https://www.unixhot.com/article/28