返回列表 发布新帖
查看: 97|回复: 1

Linux 运维工程师实战指南:常用命令详解与应用场景

发表于 2025-4-18 14:20:55 | 查看全部 |阅读模式

这里或许是互联网从业者的最后一片净土,随客社区期待您的加入!

您需要 登录 才可以下载或查看,没有账号?立即注册

×
本帖最后由 lin 于 2025-4-18 14:30 编辑

在 Linux 运维工作中,掌握核心命令的使用是第一步。本文将结合日常运维场景,深入讲解一线运维常用命令的作用、语法和实际案例,帮助你从“会用”到“用得好”。
一、系统资源监控
资源监控是每个运维工程师的日常功课,主要看 CPU、内存、磁盘、负载等情况。
1.1 top:实时监控系统资源使用
  1. top
复制代码
作用:实时显示系统中各个进程的资源占用情况(CPU、内存等)。
常见快捷键:
  • P:按 CPU 占用排序
  • M:按内存占用排序
  • q:退出
示例:
  1. top -b -n 1 | head -n 20
复制代码
这个命令以批处理方式运行 top(便于脚本使用),只输出一次并显示前 20 行结果。
1.2 free:查看内存使用情况
  1. free -h
复制代码
作用:显示系统内存和 swap 使用情况。
  • -h 参数表示以人类可读方式输出(如 MB、GB)。
常用字段说明:
  • total:总内存
  • used:已用内存
  • free:空闲内存
  • available:应用可用内存(比 free 更准确)
1.3 df:查看磁盘使用情况
  1. df -h
复制代码
作用:显示各挂载分区的磁盘使用情况。
  • -h 表示以人类可读方式显示
  • 关注点:
  • 是否有磁盘使用率接近 100%
  • 挂载点 /、/var、/home 是否空间不足
二、系统负载与进程排查
2.1 uptime:查看系统负载
  1. uptime
复制代码
输出样例:
  1. 16:40:51 up 3 days,  5:12,  2 users,  load average: 0.23, 0.45, 0.55
复制代码
  • 第三个字段是负载(1分钟、5分钟、15分钟平均负载)
  • 一般来说,负载值 <= CPU核心数 是正常的
2.2 ps:查看进程信息
  1. ps aux | grep nginx
复制代码
  • a:显示所有用户的进程
  • u:显示用户信息
  • x:显示没有控制终端的进程
示例:查看内存占用前 10 的进程
  1. ps aux --sort=-%mem | head -n 10
复制代码
三、日志查看与分析
日志是排查问题的第一线工具。
3.1 tail:查看日志结尾
  1. tail -n 100 /var/log/messages
复制代码
  • -n 100 表示查看最后 100 行
  • 可用于分析系统报错或应用日志(如 nginx、mysql)
实时跟踪日志变化:
  1. tail -f /var/log/nginx/error.log
复制代码
3.2 grep:关键词过滤
  1. grep "error" /var/log/nginx/error.log
复制代码
  • 快速定位包含关键字的日志行
  • 支持正则表达式,配合 tail 使用效率更高

四、服务状态管理
  • 服务的启动、停止、重启是常见操作。

4.1 systemctl:管理系统服务(CentOS 7+)
# 查看 nginx 状态
  1. systemctl status nginx
复制代码
# 启动 nginx
  1. systemctl start nginx
复制代码
# 停止 nginx
  1. systemctl stop nginx
复制代码
# 重启 nginx
  1. systemctl restart nginx
复制代码
# 设置开机启动
  1. systemctl enable nginx
复制代码
五、网络检查与端口排查
5.1 netstat / ss:查看端口占用
# 查看 80 端口是否被监听
  1. netstat -tunlp | grep 80
复制代码
# 或者使用 ss(推荐)
  1. ss -tlnp | grep 80
复制代码
  • t:TCP 连接
  • u:UDP 连接
  • l:监听状态
  • n:显示数字 IP 和端口
  • p:显示进程 PID

5.2 ping / curl:网络连通性检查
  1. ping -c 4 www.baidu.com
复制代码
  • 检查是否能访问目标主机,-c 指定次数
  1. curl -I http://localhost
复制代码
  • 查看网页的 HTTP 响应头,检查是否响应正常
六、文件与权限管理
6.1 ls:列出文件信息
  1. ls -l
复制代码
  • 显示详细属性(权限、大小、修改时间等)

6.2 chmod / chown:权限修改
  1. chmod 755 filename  
复制代码
  1. chown nginx:nginx filename
复制代码
  • filename为实例文件名,根据实际情况修改。
  • chmod 修改权限(如 rwxr-xr-x)
  • chown 修改所属用户和用户组

七、计划任务与备份
7.1 crontab:设置定时任务
  1. crontab -e
复制代码
示例:每天凌晨2点备份网站目录
  1. 0 2 * * * tar -zcvf /backup/site_$(date +\%F).tar.gz /var/www/html
复制代码
八、脚本应用示例
批量检查 IP 是否可达:
  1. #!/bin/bash
  2. for ip in $(cat ip_list.txt); do
  3.   ping -c 1 $ip &> /dev/null
  4.   if [ $? -eq 0 ]; then
  5.     echo "$ip is reachable"
  6.   else
  7.     echo "$ip is unreachable"
  8.   fi
  9. done
复制代码
总结
Linux 运维工作离不开命令行的高效使用。本文涵盖了系统巡检、服务管理、日志分析、网络排查、权限控制等常见命令,并配以详细说明和示例。
运维的本质是 自动化 + 效率 + 稳定性,掌握命令只是第一步,进一步还需学习:
  • Shell 脚本编程
  • 自动化工具(如 Ansible、SaltStack)
  • 容器化技术(Docker、Kubernetes)
  • 监控系统(Zabbix、Prometheus)




发表于 2025-4-18 14:36:10 | 查看全部
挺实用的
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Copyright © 2001-2025 Suike Tech All Rights Reserved. 随客交流社区 (备案号:津ICP备19010126号) |Processed in 0.128578 second(s), 6 queries , Gzip On, MemCached On.
关灯 在本版发帖返回顶部
快速回复 返回顶部 返回列表