运维人的 Linux 工具箱:这些命令能救急
在Linux运维工作中,掌握关键命令可以大幅提升故障排查和系统管理效率。无论是服务器卡顿、网络异常,还是日志分析、性能优化,合适的命令能让你快速定位问题并解决。
本文整理了一些最实用的Linux命令,涵盖系统监控、网络诊断、日志分析、文件管理等场景,教你如何使用它们应对突发故障。
一、系统监控与性能分析
1. top / htop —— 实时进程监控作用:查看CPU、内存、进程占用情况。
救急场景:服务器卡顿,快速定位高负载进程。
示例:
输出关键列:
%CPU:进程CPU占用率RES:内存占用COMMAND:进程名称2. vmstat —— 系统资源统计作用:查看CPU、内存、I/O、上下文切换等整体情况。
救急场景:排查系统瓶颈(如CPU等待I/O)。
示例:
关键指标:
r:运行队列长度(>CPU核心数说明过载)wa:I/O等待时间占比(高说明磁盘瓶颈)3. iostat —— 磁盘I/O监控作用:分析磁盘读写性能。
救急场景:数据库缓慢,怀疑磁盘瓶颈。
示例:
关键指标:
%util:磁盘利用率(>80%说明繁忙)await:I/O平均等待时间(毫秒)4. free -h —— 内存使用情况作用:查看内存和Swap使用情况。
救急场景:服务崩溃,怀疑内存耗尽。
示例:
关键指标:available:可用内存(包括缓存和缓冲区)
5. df -h / du -sh —— 磁盘空间分析作用:df查看磁盘剩余空间,du统计目录大小。
救急场景:日志写满磁盘导致服务异常。
示例:
二、网络诊断
1. ping / traceroute —— 基础连通性测试作用:检查网络延迟和路由路径。
救急场景:用户反馈网站无法访问。
示例:
作用:查看当前网络连接和监听端口。
救急场景:服务端口未启动或连接数爆满。
示例:
作用:捕获网络数据包,排查协议问题。
救急场景:API接口异常,怀疑网络丢包。
示例:
作用:按进程或IP查看网络带宽占用。
救急场景:服务器流量激增,定位异常连接。
示例:
三、日志与文本处理
1. grep —— 文本搜索作用:快速过滤关键日志。
救急场景:从海量日志中找错误信息。
示例:
作用:动态查看日志更新。
救急场景:调试服务启动问题。
示例:
作用:提取、替换、统计文本内容。
救急场景:分析日志生成报告。
示例:
四、文件与权限管理
1. find —— 文件搜索作用:按名称、时间、大小查找文件。
救急场景:清理过期日志或临时文件。
示例:
作用:修改文件权限和所有者。
救急场景:因权限问题导致服务无法启动。
示例:
五、系统管理
3. systemctl —— 服务管理作用:启动、停止、重启服务。
救急场景:服务崩溃需快速恢复。
示例:
作用:查询systemd管理的服务日志。
救急场景:服务启动失败排查。
示例:
以上这些命令覆盖了Linux运维中最常见的故障场景,建议收藏并熟练使用。实际工作中,可结合脚本实现自动化,进一步提升效率。