top, htop, mpstat, vmstatfree -m, vmstat, /proc/meminfoiostat, iotop, dstatiftop, nload, vnstatdf -h, du -sh *实时监控:
top/htop - 进程监控glances - 综合监控工具nmon - 性能监控工具日志监控:
tail -f /var/log/messagesjournalctl -f (systemd系统)logwatch - 日志分析工具#!/bin/bash
# 简单监控脚本示例
# CPU使用率
cpu_usage=$(top -bn1 | grep "Cpu(s)" | sed "s/.*, *\([0-9.]*\)%* id.*/\1/" | awk '{print 100 - $1}')
# 内存使用
mem_total=$(free -m | awk '/Mem:/ {print $2}')
mem_used=$(free -m | awk '/Mem:/ {print $3}')
# 磁盘空间
disk_usage=$(df -h / | awk '/\// {print $5}')
echo "CPU使用率: ${cpu_usage}%"
echo "内存使用: ${mem_used}MB/${mem_total}MB"
echo "根分区使用: ${disk_usage}"
top或htop找出高CPU进程strace -p <PID>跟踪进程系统调用perf top进行性能分析free -m查看内存使用情况vmstat 1查看交换分区使用ps aux --sort=-%mem | head查看内存占用高的进程iostat -x 1查看磁盘I/O状态iotop查看I/O高的进程/var/log/messages是否有磁盘错误ping测试基本连通性traceroute检查路由路径netstat -tulnp查看端口监听tcpdump抓包分析/var/log/messages - 通用系统消息/var/log/syslog - 系统日志(基于Debian)/var/log/auth.log - 认证日志/var/log/kern.log - 内核日志/var/log/dmesg - 启动消息grep -i "error" /var/log/messages - 搜索错误tail -n 100 /var/log/syslog - 查看最后100行journalctl --since "2023-01-01" --until "2023-01-02" - 按日期筛选awk '/pattern/ {print $1}' /var/log/file - 提取特定字段yum update或apt-get upgradelogrotate配置日志轮转/etc/sysctl.conf配置管理工具:
监控自动化:
日志集中管理:
通过系统化的监控和标准化的故障排除流程,可以显著提高Linux系统的稳定性和运维效率。