systemd 是一个系统和服务管理器,用于 Linux 发行版,提供了一个强大的初始化系统和守护进程,能够管理系统的启动和服务。systemd 命令本身主要用于管理 systemd 守护进程及其控制的单元文件。
1. 命令简介
systemd 是一个系统和服务管理器,它替代了传统的 SysV init 系统。systemd 使用依赖关系来并行启动服务,从而加快启动过程,并且支持各种类型的单元文件,如服务、设备、挂载点等。
2. 命令的用法
基本的命令格式如下:
systemctl [选项] COMMAND [ARGUMENTS...]
3. 命令可用选项
systemctl 支持许多选项,以下是一些常用选项:
-  --version- 显示版本信息。
 
-  --help- 显示帮助信息。
 
-  --no-pager- 不使用分页器直接输出到终端。
 
-  --user- 操作用户的 systemd 单元文件而不是系统范围内的单元文件。
 
-  --root=PATH- 指定不同的根目录路径。
 
-  --no-block- 执行操作时不等待操作完成。
 
4. 常用命令
-  status UNIT- 显示指定单元的状态。例如:systemctl status nginx.service。
 
- 显示指定单元的状态。例如:
-  start UNIT- 启动指定的服务。例如:systemctl start nginx.service。
 
- 启动指定的服务。例如:
-  stop UNIT- 停止指定的服务。例如:systemctl stop nginx.service。
 
- 停止指定的服务。例如:
-  restart UNIT- 重启指定的服务。例如:systemctl restart nginx.service。
 
- 重启指定的服务。例如:
-  reload UNIT- 重新加载配置文件而不重启服务。例如:systemctl reload nginx.service。
 
- 重新加载配置文件而不重启服务。例如:
-  enable UNIT- 启用服务以便在启动时自动启动。例如:systemctl enable nginx.service。
 
- 启用服务以便在启动时自动启动。例如:
-  disable UNIT- 禁用服务,使其不再在启动时自动启动。例如:systemctl disable nginx.service。
 
- 禁用服务,使其不再在启动时自动启动。例如:
-  is-active UNIT- 检查服务是否处于活动状态。例如:systemctl is-active nginx.service。
 
- 检查服务是否处于活动状态。例如:
-  daemon-reload- 重新读取所有配置文件。这通常在修改了服务配置后使用。
 
-  list-unit-files- 列出所有已知的单元文件及其状态。例如:systemctl list-unit-files.
 
- 列出所有已知的单元文件及其状态。例如:
-  list-units- 列出所有活动单元的状态。例如:systemctl list-units.
 
- 列出所有活动单元的状态。例如:
-  mask UNIT- 隐藏一个服务单元文件,使其无法被启用或启动。例如:systemctl mask nginx.service。
 
- 隐藏一个服务单元文件,使其无法被启用或启动。例如:
-  unmask UNIT- 取消隐藏服务单元文件。例如:systemctl unmask nginx.service。
 
- 取消隐藏服务单元文件。例如:
5. 简短的案例
-  查看 nginx 服务的状态: systemctl status nginx.service
-  启动 nginx 服务: systemctl start nginx.service
-  停止 nginx 服务: systemctl stop nginx.service
-  重启 nginx 服务: systemctl restart nginx.service
-  使 nginx 服务在系统启动时自动启动: systemctl enable nginx.service
-  禁用 nginx 服务在系统启动时自动启动: systemctl disable nginx.service
-  检查 nginx 服务是否处于活动状态: systemctl is-active nginx.service
通过上述选项和示例,应该对如何使用 systemctl 命令有了更深入的理解,这对于管理和监控 Linux 系统上的服务是非常重要的。
