我们专为Linux运维工程师精心整理的命令宝典,涵盖日常工作中99%的高频场景,建议收藏备用。
掌握这些高频命令是Linux运维工程师的基本功。建议:
1. 每日必练:top , df , free , ss , tail 这5个命令每天使用。
2. 组合使用:学会用管道 | 组合命令,实现1+1>2的效果。
3. 参数记忆:重点记忆每个命令的2-3个核心参数。
4. 场景实战:在真实故障中刻意练习,形成肌肉记忆。

一、系统监控与性能分析(四大天王)
1. top - 实时进程监控

关键指标: %CPU > 80% 需警惕, RES 为实际内存占用, S 列显示进程状态
2. htop - 增强版top(需安装)

3. vmstat - 系统整体负载

关键列: r (运行队列)、 b (阻塞进程)、 us (用户CPU)、 wa (IO等待)
4.iostat - 磁盘IO分析

关键指标: %util > 80% 说明磁盘瓶颈, await 为IO响应时间
5.sar - 历史性能数据

二、日志分析(五大神器)
6. tail - 日志实时追踪

7. journalctl - systemd日志专家

8. grep / ripgrep - 文本显微镜

9. awk - 日志分析瑞士军刀

10. sed - 流式编辑器

三、网络排查(网络五虎将)
11. ss / netstat - 连接状态查看

12. tcpdump - 网络抓包
抓取80端口数据包保存到文件
tcpdump -i eth0 port 80 -w capture.pcap
抓取指定IP的通信
tcpdump -i eth0 host 192.168.1.100
抓取MySQL查询
tcpdump -i any -s 0 -l -w - dst port 3306 | strings | perl -e 'while(<>) { chomp; next if /^[^ ]+[ ]*$/; if(/^(SELECT|UPDATE|DELETE|INSERT|SET|COMMIT|ROLLBACK|CREATE|DROP|ALTER)/i) { if (defined $q) { print "$q\n"; } $q=$_; } else { $_ =~ s/^[ \t]+//; $q.=" $_"; } }'
限制抓包数量
tcpdump -c 100 -i eth0
13. lsof - 文件与端口关联

14. ping / mtr - 连通性测试

15. nc (netcat) - 网络瑞士军刀

四、文件与目录操作(文件三剑客)
16. ls - 目录浏览

17. find - 文件搜索引擎

18. rsync - 文件同步专家

19. du / df - 磁盘使用

五、进程管理
20. ps - 进程快照

21. pgrep / pkill - 进程查找与终止

22. strace - 系统调用追踪

23. kill - 信号发送

六、系统服务管理
24. systemctl - systemd服务管理

25. service - SysVinit服务管理

七、用户与权限管理
26. chmod - 权限修改

27. chown - 所有者修改

28. useradd / usermod - 用户管理

八、性能调优与系统参数
29. ulimit - 资源限制

30. sysctl - 内核参数调整

31. vm.drop_caches -释放缓存

九、压缩与备份
32. tar - 打包压缩

33. gzip / gunzip - 快速压缩

34. zip / unzip - 跨平台压缩

十、定时任务
35. crontab - 计划任务

十一、实用组合命令(运维必杀技)
36. 查看系统整体状态
CPU、内存、磁盘、负载一键查看
echo "=== CPU Usage ===" && uptime && echo "=== Memory Usage ===" && free -h && echo "=== Disk Usage ===" && df -h && echo "=== Top CPU Processes ===" && ps aux --sort=-%cpu | head -6 && echo "=== Top Memory Processes ===" && ps aux --sort=-%mem | head -6
37. 快速定位磁盘占用大户
查找当前目录下最大的10个文件/目录
du -ah . | sort -rh | head -10
查找大于100M的文件
find / -type f -size +100M -exec ls -lh {} \; 2>/dev/null | awk '{print $5 ": " $9}' | sort -hr
38. 网络连接统计
统计各状态TCP连接数
ss -ant | awk 'NR>1 {s[$1]++} END {for(k in s) print k, s[k]}'
统计每个IP的连接数
ss -nt | grep ESTAB | awk '{print $5}' | cut -d: -f1 | sort | uniq -c | sort -rn | head -20
39. 日志快速分析
统计Nginx日志中访问量最高的IP
awk '{print $1}' access.log | sort | uniq -c | sort -rn | head -20
统计各状态码数量
awk '{print $9}' access.log | sort | uniq -c | sort -rn
统计访问最频繁的URL
awk '{print $7}' access.log | sort | uniq -c | sort -rn | head -20
40. 系统启动时间分析
查看各服务启动耗时
systemd-analyze blame
生成启动流程图
systemd-analyze plot > boot.svg
十二、安全与防火墙
41. iptables / firewalld - 防火墙管理

42. last / lastb - 登录审计

十三、容器与虚拟化
43. docker - 容器管理

44. kubectl - Kubernetes管理

十四、数据库运维
45. mysql - MySQL命令行

十五、终极速查表

十六、使用技巧
1.命令别名:在 ~/.bashrc 中添加常用别名。
2.历史命令搜索:使用 Ctrl+R 反向搜索历史命令。
3.多命令组合:
4.输出重定向:
