IT俱乐部 Linux 运维工程师必备:Linux系统监控与故障排查的命令大全

运维工程师必备:Linux系统监控与故障排查的命令大全

在日常运维工作中,快速获取系统状态信息至关重要。以下整理了常用的Linux监控命令,按功能分类并附使用示例:

一、系统概览信息

命令 功能 示例输出
hostname 查看主机名 web-server-01
uname -a 系统内核信息 Linux db01 5.4.0-131-generic #148-Ubuntu SMP
cat /etc/os-release 操作系统版本 PRETTY_NAME="Ubuntu 20.04.4 LTS"
uptime 运行时间与负载 18:05:01 up 45 days, 3:21, 1 user, load average: 0.08, 0.03, 0.05
date 系统时间 Thu Aug 18 18:05:24 CST 2023

二、CPU监控

命令 功能 关键指标
lscpu CPU架构信息 核心数/线程数/型号
top -bn1 实时CPU使用率 %Cpu(s): 12.3 us, 6.2 sy
mpstat -P ALL 多核CPU详细统计 各核心的user/sys/idle占比
sar -u 2 5 周期性CPU采样 平均使用率趋势
vmstat 1 综合性能监控 r(运行队列)/b(阻塞进程)

高级技巧

# 按CPU使用率排序进程
ps -eo pid,ppid,cmd,%mem,%cpu --sort=-%cpu | head -n 10

三、内存监控

命令 功能 关键指标
free -m 内存总量与使用 Mem: 32042 29582 2460
vmstat -s 详细内存统计 active/inactive memory
cat /proc/meminfo 内存详细信息 MemTotal/Cached/Swap
slabtop 内核slab缓存 内核对象缓存使用

内存泄漏排查

# 监控进程内存变化
watch -n 1 "ps -eo pid,cmd,rss --sort=-rss | head -n 5"

四、磁盘监控

命令 功能 关键指标
df -h 磁盘空间使用 /dev/sda1 98G 45G 48G 49% /
iostat -dx 2 磁盘IO性能 await(ms)/util(%)
iotop 实时IO进程 进程级读写速率
`du -sh /* sort -hr` 目录大小排序
lsblk 块设备信息 磁盘分区/挂载点

IO瓶颈诊断

# 定位高IO进程
pidstat -d 1

五、网络监控

命令 功能 关键指标
ifconfig/ip addr 网络接口信息 IP地址/RX/TX包量
netstat -tulnp 端口监听状态 服务端口/PID
ss -s 连接统计 Total: 987 (kernel 0)
tcpdump -i eth0 网络包捕获 实时流量分析
iftop -P 带宽使用排名 主机级流量统计

连接分析

# 查看ESTABLISHED连接数
netstat -an | grep ESTABLISHED | wc -l

六、进程与服务监控

命令 功能 关键指标
ps aux 进程列表 CPU/MEM使用率
pidstat 1 进程资源统计 %CPU/%MEM
systemctl status 服务状态 Active(running)
journalctl -u nginx 服务日志 服务运行日志
lsof -p 进程打开文件 文件描述符

进程树查看

# 显示进程树关系
pstree -ap

七、高级监控工具

实时监控面板

  • htop:增强版top(支持鼠标操作)
  • glances:全能监控面板(需安装)
  • nmon:专业性能监控工具

日志分析

# 查看包含ERROR的最新日志
tail -f /var/log/syslog | grep -i error

# 统计404错误次数
awk '$9==404 {print $7}' access.log | sort | uniq -c | sort -nr

性能分析

  • perf top:CPU热点函数分析
  • strace -p :系统调用跟踪
  • dstat:综合性能统计工具

八、最佳实践建议

命令组合使用

# 单行获取关键指标
echo "Load:$(uptime | awk -F'load average: ' '{print $2}') | Mem:$(free -m | awk '/Mem/{print $3"/"$2"MB"}')"

监控自动化

  • 使用cron定期收集指标
  • 通过tee同时输出到屏幕和文件
  • 编写脚本格式化输出(如本文示例)

安全注意事项

  • 避免在生产环境直接修改配置
  • 使用nohup执行长时间任务
  • 敏感命令添加-i交互确认

运维箴言:掌握这些命令如同获得系统”听诊器”,但真正的价值在于理解数据背后的意义。建议建立自己的命令手册,定期练习形成肌肉记忆。

通过熟练使用这些命令,运维工程师可以快速诊断系统瓶颈,有效处理故障,保障业务稳定运行。记住:好的运维不是救火队员,而是通过监控提前发现隐患的守护者。

以上就是运维工程师必备:Linux系统监控与故障排查的命令大全的详细内容,更多关于Linux系统监控与故障排查的资料请关注IT俱乐部其它相关文章!

本文收集自网络,不代表IT俱乐部立场,转载请注明出处。https://www.2it.club/server/linux/17509.html
上一篇
下一篇
联系我们

联系我们

在线咨询: QQ交谈

邮箱: 1120393934@qq.com

工作时间:周一至周五,9:00-17:30,节假日休息

关注微信
微信扫一扫关注我们

微信扫一扫关注我们

返回顶部