当前位置: 首页 > news >正文

【linux】systemctl基本语法

systemctl 是 Linux 系统中用于管理 systemd 系统和服务管理器的核心命令。systemd 是现代大多数 Linux 发行版(如 Ubuntu、Debian、CentOS、Fedora、Arch Linux 等)默认的初始化系统(init system),负责启动、停止和管理系统服务、挂载文件系统、日志记录等。


1. 基本语法

systemctl [选项] <命令> [服务名]
  • 服务名 通常是 服务名.service(如 nginx.service),但可以省略 .service 后缀(如直接写 nginx)。

2. 常用命令

服务管理
命令作用
systemctl start <服务名>启动服务
systemctl stop <服务名>停止服务
systemctl restart <服务名>重启服务
systemctl reload <服务名>重新加载配置(不重启服务)
systemctl status <服务名>查看服务状态(运行/失败/日志)
systemctl enable <服务名>设置开机自启
systemctl disable <服务名>取消开机自启
systemctl is-enabled <服务名>检查是否开机自启
systemctl is-active <服务名>检查服务是否正在运行
系统状态
命令作用
systemctl list-units --type=service列出所有已加载的服务
systemctl list-units --type=service --all列出所有服务(包括未加载的)
systemctl list-unit-files查看所有服务的开机启动状态
systemctl --failed查看失败的服务
systemctl daemon-reload重新加载 systemd 配置(修改服务文件后需执行)
系统控制
命令作用
systemctl reboot重启系统
systemctl poweroff关机
systemctl suspend挂起(睡眠)
systemctl hibernate休眠
systemctl rescue进入救援模式(单用户模式)
systemctl emergency进入紧急模式
日志查看
命令作用
journalctl -u <服务名>查看特定服务的日志
journalctl -xe查看详细系统日志(排错常用)

3. 实际示例

管理 Nginx 服务
# 启动 Nginx
sudo systemctl start nginx# 查看状态
sudo systemctl status nginx# 设置开机自启
sudo systemctl enable nginx# 重启 Nginx
sudo systemctl restart nginx# 重新加载配置(不中断服务)
sudo systemctl reload nginx
排查服务故障
# 查看失败的服务
sudo systemctl --failed# 查看服务日志
sudo journalctl -u nginx -xe
修改服务配置后重载
# 编辑服务配置文件(如 nginx.service)
sudo nano /etc/systemd/system/nginx.service# 重新加载 systemd 配置
sudo systemctl daemon-reload# 重启服务
sudo systemctl restart nginx

4. 服务文件路径

  • 系统默认服务文件:/usr/lib/systemd/system/
  • 自定义服务文件:/etc/systemd/system/
    (优先覆盖默认配置)

5. 注意事项

  1. 需要 root 权限:大多数 systemctl 操作需要 sudo
  2. 服务名格式:通常省略 .service(如 nginx 等价于 nginx.service)。
  3. 依赖关系systemd 会自动处理服务依赖(如启动 nginx 前先启动网络)。

通过 systemctl,你可以高效管理系统服务,适合运维、开发或日常使用。如果需要更深入的功能,可以查阅 man systemctl 或官方文档。

http://www.xdnf.cn/news/638893.html

相关文章:

  • 康佳Java开发面试题及参考答案
  • 前端vue3实现图片懒加载
  • 【LCEL深度解析】LangChain表达式语言的工程化实践指南
  • 基于stm32单片机的智能盲杖研究
  • # YOLO11解决方案之区域追踪探索
  • Python 数据类型方法(1)
  • Docker 一键部署倒计时页面:Easy Countdown全设备通用
  • 2025年5月18日蓝桥stema省选拔赛答案解析
  • GDB调试工具详解
  • 探索高效视频下载:一款绿色版工具的实用体验
  • FreeRTOSConfig.h的作用
  • Three.js 海量模型加载性能优化指南
  • CMake指令:find_package()在Qt中的应用
  • C# 深入理解类(索引器)
  • Disruptor—3.核心源码实现分析一
  • 黑马点评-分布式锁Lua脚本
  • 在线热更新 Upstream全面掌握 ngx_http_upstream_conf_module
  • 华为OD机试真题——字符串加密 (2025B卷:100分)Java/python/JavaScript/C/C++/GO最佳实现
  • HTTP 和 HTTPS 的区别
  • 量子力学:量子力学为什么不属于经典物理学的范畴?
  • 【面板数据】上市公司外资持股数据集(2005-2023年)
  • 临床研究统计分析核心概念解析
  • 【MATLAB代码】主动声纳多路径目标测距与定位,测距使用互相关,频率、采样率可调、声速可调,定位使用三边法|订阅专栏后可直接查看源代码
  • C++学习之STL学习:string类常用接口的模拟实现
  • 大语言模型的完整训练周期从0到1的体系化拆解
  • 基于Qt的app开发第十一天
  • C语言指针详解
  • 湖北理元理律师事务所债务优化方案:让还款与生活平衡的艺术
  • [项目总结] 基于Docker与Nginx对项目进行部署
  • 思考:chmod u+x等价于chmod u=x吗