当前位置: 首页 > news >正文

Ubuntu 系统中,每日健康检查

一、手动检查命令(基础项)

1. 系统资源监控

内存使用:

free -h          # 查看内存和交换空间使用情况
cat /proc/meminfo | grep -i "memavailable"  # 查看可用内存

CPU 负载:

top -n 1 -b | grep "load average"  # 查看负载(1/5/15分钟)
uptime                             # 系统运行时间及负载

磁盘空间:

df -h              # 查看各分区使用情况
du -sh /var/*      # 检查特定目录(如 /var)占用

2. 日志检查

关键错误日志:

journalctl -p 3 -b --since "24 hours ago"  # 查看过去24小时的系统级错误(优先级3及以上)
grep -i "error\|warning" /var/log/syslog   # 过滤系统日志中的错误和警告
tail -n 100 /var/log/auth.log              # 检查认证日志(SSH登录等)

3. 磁盘健康

SMART 状态(需安装 smartmontools):

sudo smartctl -a /dev/sda | grep "SMART overall-health"  # 检查磁盘健康状态

坏块检测:

sudo badblocks -v /dev/sda  # 仅测试读操作(谨慎使用写测试)

4. 网络与服务状态

网络连接:

ss -tulnp | grep -E "LISTEN|ESTAB"  # 查看监听和已建立连接
netstat -ant | grep "SYN_SENT"      # 检查异常连接(如 SYN 洪水攻击)

服务状态:

systemctl --failed                 # 列出失败的服务
systemctl status nginx mysql        # 检查关键服务(如 Nginx/MySQL)

5. 安全更新与补丁

检查可用更新:

sudo apt update && apt list --upgradable  # 列出可升级的包

二、自动化检查(推荐方案)

1. 编写检查脚本

创建脚本 /usr/local/bin/system_check.sh,内容示例:

#!/bin/bash

# 定义日志文件
LOG_FILE="/var/log/daily_system_check.log"

# 清空旧日志
> $LOG_FILE

# 资源检查
echo "===== 系统资源 =====" >> $LOG_FILE
free -h >> $LOG_FILE
echo -e "\nCPU 负载:" >> $LOG_FILE
uptime >> $LOG_FILE
echo -e "\n磁盘使用:" >> $LOG_FILE
df -h >> $LOG_FILE

# 服务状态
echo -e "\n===== 服务状态 =====" >> $LOG_FILE
systemctl --failed >> $LOG_FILE

# 日志错误检查
echo -e "\n===== 错误日志 =====" >> $LOG_FILE
journalctl -p 3 -b --since "24 hours ago" | tail -n 20 >> $LOG_FILE

# 发送邮件通知(需配置邮件服务)
# mail -s "Daily System Check" admin@example.com < $LOG_FILE

2. 设置定时任务

通过 cron 每日执行:

sudo crontab -e

添加以下行(每天凌晨3点执行)

0 3 * * * /usr/local/bin/system_check.sh

3. 日志监控工具(可选)

使用 logwatch 或 fail2ban 分析日志。

部署监控系统(如 Prometheus + Grafana)实现可视化。

三、关键注意事项

备份验证:每日检查备份文件是否生成(如 ls -lh /backups)。

安全审计:定期运行 lynis audit system 进行深度安全检查。

硬件传感器(安装 lm-sensors):

sensors  # 查看 CPU/主板温度

四、进阶建议

使用 Nagios/Zabbix 实现自动化监控和告警。

启用 Automatic Security Updates:

sudo apt install unattended-upgrades
sudo dpkg-reconfigure unattended-upgrades  # 启用自动安全更新

通过以上步骤,可以全面监控 Ubuntu 系统的健康状态,及时发现问题并处理。

http://www.dtcms.com/a/99505.html

相关文章:

  • vulnhub-Node1
  • C#:第一性原理拆解字段(fields)
  • ElasticSearch 分词器
  • kill子进程后再wait可以吗?
  • java性能优化实例
  • 如何估算和优化 Gas
  • 学习通-操作系统第五版费翔林-习题-标答
  • 【AI学习】深度学习,人工神经网络
  • 破解美业数字化迷思:中小门店的智慧转型之路
  • 代码随想录day31 贪心part05
  • 蓝桥杯真题------R格式(高精度乘法,高精度加法)
  • Flutter 开发环境配置--宇宙级教学!
  • 【通道注意力机制】【SENet】Squeeze-and-Excitation Networks
  • 高并发系统下的订单号生成服务设计与实现
  • Node.js Express 安装并使用 nodemon
  • 多路径 TCP 调度的另一面
  • Vue3 事件处理
  • 英伟达GB300新宠:新型LPDDR5X SOCAMM内存
  • 【12】Ajax的原理和解析
  • C语言之链表增删查改
  • 【Java SE】Java比较器:Comparable、Comparator
  • Python的ASGI Web 服务器之uvicorn
  • 图解AUTOSAR_SWS_SynchronizedTimeBaseManager
  • Vue——常用指令总结、指令修饰符、v-model原理、computed计算属性、watch监听器、ref和$refs
  • JAVA反序列化深入学习(八):CommonsCollections6
  • python 上下文管理器with
  • CKS认证 | Day3 K8s容器运行环境安全加固
  • 实战篇Redis
  • 动力电池热失控:新能源汽车安全的“隐形火山”如何预防?
  • 蓝桥杯 之 二分