17.6 重点回顾

  • 早期的服务管理使用 systemV 的机制,通过 /etc/init.d/*, service, chkconfig, setup 等指令来管理服务的启动/关闭/默认启动;
  • 从 CentOS 7.x 开始,采用 systemd 的机制,此机制最大功能为平行处理,并采单一指令管理 (systemctl),开机速度加快!
  • systemd 将各服务定义为 unit,而 unit 又分类为 service, socket, target, path, timer 等不同的类别,方便管理与维护
  • 启动/关闭/重新启动的方式为: systemctl [start|stop|restart] unit.service
  • 设置默认启动/默认不启动的方式为: systemctl [enable|disable] unit.service
  • 查询系统所有启动的服务用 systemctl list-units --type=service 而查询所有的服务 (含不启动) 使用 systemctl list-unit-files --type=service
  • systemd 取消了以前的 runlevel 概念 (虽然还是有相容的 target),转而使用不同的 target 操作环境。常见操作环境为 multi-user.targer 与 graphical.target。 不重新开机而转不同的操作环境使用 systemctl isolate unit.target,而设置默认环境则使用 systemctl set-default unit.target
  • systemctl 系统默认的配置文件主要放在 /usr/lib/systemd/system,管理员若要修改或自行设计时,则建议放在 /etc/systemd/system/ 目录下。
  • 管理员应使用 man systemd.unit, man systemd.service, man systemd.timer 查询 /etc/systemd/system/ 下面配置文件的语法, 并使用 systemctl daemon-reload 载入后,才能自行撰写服务与管理服务喔!
  • 除了 atd 与 crond 之外,可以 通过 systemd.timer 亦即 timers.target 的功能,来使用 systemd 的时间管理功能。
  • 一些不需要的服务可以关闭喔!