Linux 进程管理与服务管理教程

1次阅读

linux进程和服务管理核心包括:ps/top查看进程、kill控制生命周期、systemctl管理systemd服务、journalctl查日志,以及按步骤排查配置、端口、依赖和安全策略问题。

Linux 进程管理与服务管理教程

Linux 进程和服务管理是系统运维和日常开发中的核心技能,掌握它们能帮你快速定位问题、优化资源使用、确保服务稳定运行。

查看和监控进程

了解当前正在运行的进程是管理的第一步。常用命令有:

  • ps:显示瞬间的进程快照,例如 ps aux 查看所有用户的所有进程,含 CPU 和内存占用;ps -ef 显示完整格式(含父进程 PID)
  • tophtop(需安装):动态实时查看进程资源消耗,支持排序、搜索、杀进程等交互操作
  • pgreppidof:按名称快速查找进程 ID,比如 pgrep nginx 返回所有 nginx 工作进程的 PID
  • lsof -i:列出所有网络连接及对应进程,排查端口占用很实用

控制进程生命周期

启动、暂停、恢复、终止进程是日常高频操作:

  • 前台运行命令后按 Ctrl+Z 可挂起进程,再用 bg 放入后台继续运行,或用 fg 拉回前台
  • kill 发送信号终止进程:kill PID(默认 SIGTERM,允许进程优雅退出),kill -9 PID(强制 SIGKILL,用于僵死进程)
  • 批量终止:如 pkill -f “python server.py”killall python
  • nohup 和 & 组合可让命令在终端关闭后持续运行,例如 nohup ./app &

管理系统服务(systemd)

现代 Linux 发行版(如 ubuntu 16.04+、centos 7+)普遍使用 systemd 管理服务:

  • systemctl start nginx 启动服务;stop/restart/reload(重载配置)对应不同操作
  • systemctl enable nginx 设置开机自启;disable 关闭自启
  • systemctl status nginx 查看服务状态、最近日志;搭配 -l(长输出)和 –no-pager 更方便阅读
  • journalctl -u nginx 查看该服务的完整日志;加 -f 实时跟踪,加 –since “2 hours ago” 按时间筛选

处理常见服务问题

遇到服务无法启动或异常退出,可按顺序排查:

  • 检查配置文件语法是否正确,如 Nginx 执行 nginx -tredis 执行 redis-server –test-memory 1
  • 确认端口未被占用:ss -tuln | grep :80lsof -i :3306
  • 查看服务依赖是否满足:systemctl list-dependencies –reverse nginx 找出哪些服务依赖它
  • 检查 SELinux 或防火墙策略(如 firewalld)是否拦截了服务行为,临时禁用测试可辅助判断
text=ZqhQzanResources