当前位置:网站首页 >  教程

十10不对,重新整理标题

时间:2026年06月12日 05:05:18 来源:易频IT社区
10年运维总结的6个零门槛服务器日常巡检与常见基础故障排查实操技巧

前置准备

本次实操基于CentOS 7.9/8.5、Ubuntu 20.04/22.04通用环境,需提前用root或带sudo权限的账号登录服务器(通过SSH工具如PuTTY、Xshell或Mac终端直接ssh user@服务器IP连接)。

技巧1:一键式CPU/内存/磁盘/网络基础资源巡检

无需安装额外工具,用systemctl自带状态组件+原生系统监控命令组合,写1行脚本实现10秒内查完所有核心指标。

操作步骤

  • 1.1 新建巡检脚本文件 ``` CentOS/Ubuntu通用,用vim编辑器打开 vi /root/quick_check.sh ``` 进入vim后按i键切换到输入模式。
  • 1.2 粘贴完整可执行脚本 ```bash !/bin/bash echo "=== 服务器基础资源巡检(`date +%Y-%m-%d %H:%M:%S`) ===" echo "" echo "【1. CPU 使用率】" top -bn1 | grep "Cpu(s)" | awk '{print "CPU占用: " 100 - $8 "%"}' echo "" echo "【2. 内存/交换空间使用率】" free -h | grep Mem | awk '{print "内存总容量: " $2 ",已用: " $3 ",剩余: " $4 ",使用率: " $3/$2100 "%"}' free -h | grep Swap | awk '{print "交换空间总容量: " $2 ",已用: " $3 ",剩余: " $4 ",使用率: " $3/$2100 "%"}' echo "" echo "【3. 磁盘挂载分区使用率】" df -h | grep -vE 'Filesystem|tmpfs|loop' | awk '{print $1 " (" $6 "): 已用 " $5}' echo "" echo "【4. 网络连通性(默认检测百度、阿里云DNS)】" ping -c 2 114.114.114.114 > /dev/null 2>&1 && echo "114.114.114.114(阿里云DNS): 连通" || echo "114.114.114.114(阿里云DNS): 断开" ping -c 2 8.8.8.8 > /dev/null 2>&1 && echo "8.8.8.8(谷歌DNS): 连通" || echo "8.8.8.8(谷歌DNS): 断开" ping -c 2 www.baidu.com > /dev/null 2>&1 && echo "www.baidu.com: 连通(域名解析正常)" || echo "www.baidu.com: 断开(域名解析异常或网络不通)" echo "" echo "=== 巡检完成 ===" ``` 粘贴后按Esc键退出输入模式,输入:wq回车保存并退出。
  • 1.3 赋予脚本执行权限并运行 ``` 赋予执行权限 chmod +x /root/quick_check.sh 首次运行(后续直接/root/quick_check.sh即可) /root/quick_check.sh ```

技巧2:快速定位CPU/内存占用TOP5的进程

原生命令top可以实现,但需切换显示逻辑,这里提供直接用一行命令输出静态TOP5的方法,适合批量巡检。

操作步骤

  • 2.1 查CPU占用TOP5进程 ``` ps aux --sort=-%cpu | head -6 ``` 参数说明:--sort=-%cpu按CPU占用降序排列,head -6显示表头+前5行。
  • 2.2 查内存占用TOP5进程 ``` ps aux --sort=-%mem | head -6 ``` 参数说明:--sort=-%mem按内存占用降序排列。
  • 2.3 终止异常进程(非必要勿用,确认进程名PID后再操作) ``` 软终止(先尝试,给进程保存数据的机会) kill 进程PID 硬终止(软终止无效时使用) kill -9 进程PID ```

技巧3:秒查磁盘IO瓶颈(CentOS/Ubuntu通用)

十10不对,重新整理标题

需提前安装轻量级工具iotop,但安装命令非常简单。

操作步骤

  • 3.1 安装iotop ``` CentOS 7/8通用 yum install -y iotop Ubuntu 20.04/22.04通用 apt update && apt install -y iotop ```
  • 3.2 运行iotop查看实时IO ``` 仅显示有IO操作的进程,更清晰 iotop -o ``` 常用快捷键:按P按进程名排序,按O按IO读写速度降序排列,按q退出。
  • 3.3 静态查询最近10秒磁盘IO总负载 ``` 原生命令,无需安装iotop iostat -x 1 10 ``` 重点看%util列,超过80%说明磁盘IO存在瓶颈。

技巧4:一键式清理服务器系统垃圾与旧日志

通用清理脚本,仅清理安全的系统垃圾(临时文件、yum/apt缓存、30天前的系统日志),不会误删业务数据。

操作步骤

  • 4.1 新建清理脚本文件 ``` vi /root/clean.sh ``` 按i键切换输入模式。
  • 4.2 粘贴完整可执行脚本 ```bash !/bin/bash echo "=== 开始清理(`date +%Y-%m-%d %H:%M:%S`) ===" echo "" 1. 清理系统临时文件 echo "正在清理 /tmp 目录下的文件..." rm -rf /tmp/ rm -rf /var/tmp/ echo "/tmp 与 /var/tmp 清理完成" echo "" 2. 清理yum/apt缓存 if [ -f /etc/redhat-release ]; then echo "检测到CentOS系统,正在清理yum缓存..." yum clean all yum makecache fast 可选,提前更新缓存方便后续安装 else echo "检测到Ubuntu系统,正在清理apt缓存..." apt clean apt autoremove -y 清理不再需要的依赖包 fi echo "包管理器缓存清理完成" echo "" 3. 清理30天前的系统日志 echo "正在清理30天前的/var/log/目录下的日志文件..." find /var/log -mtime +30 -name ".log" -exec rm -f {} \; find /var/log -mtime +30 -name ".gz" -exec rm -f {} \; find /var/log -mtime +30 -name ".old" -exec rm -f {} \; echo "30天前的系统日志清理完成" echo "" echo "=== 清理完成 ===" ``` 按Esc键退出输入模式,输入:wq回车保存并退出。
  • 4.3 赋予执行权限并运行 ``` chmod +x /root/clean.sh /root/clean.sh ```

技巧5:快速检测端口是否被占用(含业务端口排查)

操作步骤

  • 5.1 检测单个端口是否被占用(通用命令,推荐优先用) ``` 比如检测80端口 ss -tuln | grep :80 或者netstat(部分系统需先安装net-tools) CentOS: yum install -y net-tools Ubuntu: apt install -y net-tools netstat -tuln | grep :80 ``` 如果有输出,说明端口被占用;无输出则未占用。
  • 5.2 查看占用端口的进程名与PID ``` 比如检测80端口的进程 ss -tulnp | grep :80 ```

技巧6:设置定期自动巡检与清理任务

用系统自带的crontab实现,无需安装额外工具。

操作步骤

  • 6.1 编辑crontab定时任务 ``` crontab -e ``` 首次编辑会提示选择编辑器,推荐选3(vim.basic)。
  • 6.2 添加定时任务(按i键输入模式) ``` 每天早上8点执行巡检脚本,结果输出到/root/check_log.txt(追加模式,避免覆盖前一天的) 0 8 /root/quick_check.sh >> /root/check_log.txt 2>&1 每周日凌晨2点执行清理脚本 0 2 0 /root/clean.sh ``` 时间格式说明:分 时 日 月 周,代表任意。
  • 6.3 保存并退出 按Esc键,输入:wq回车。
  • 6.4 验证定时任务是否添加成功 ``` crontab -l ```

相关推荐

最新

热门

推荐

精选

标签

易频IT社区是综合性互联网IT技术门户网站,专注分享网络技术、服务器运维、网络安全、编程开发、系统架构、云计算、大数据等行业干货,实时更新IT行业资讯、零基础教程、实战案例,为IT从业者、技术爱好者提供专业的学习交流平台。

Copyright © 2021-2026 易频IT社区. All Rights Reserved. 备案号:闽ICP备2023013482号 网站地图