linux之日常巡检

本文详细介绍了在Linux环境中进行服务器巡检的步骤,包括CPU监控、内存使用情况检查、网络状态检测、服务状态确认、文件系统使用率检查、磁盘读写监控、环境变量查看、kernel信息和操作系统版本的检查,以及网络统计信息和外部网站运行状态的验证。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.对服务器CPU进行监控,并输出CPU的信息

[root@192 ~]# cat /proc/cpuinfo | grep 'model name' | awk -F ':' '{print $2}'
Intel(R) Core(TM) i7-7700 CPU @ 3.60GHz

2.对服务器内存进行监控,并输出内存剩余使用率信息

[root@192 ~]# free -m | grep Mem | awk '{print $4/$2*100}'
7.3922

3.对服务器网络进行监控,检测网络是否通畅,并输出结果

[root@192 ~]# ping -c1 www.baidu.com > /dev/null
[root@192 ~]# echo $? 
0

4.对服务器服务进行监控,比如ftp服务,mysql服务,并输出结果

[root@192 ~]# systemctl start mariadb   #开启mysql
[root@192 ~]# ss -nlpt | grep mysqld > /dev/null
[root@192 ~]# echo $?
0
[root@192 ~]# systemctl stop mariadb  #停掉mysql
[root@192 ~]# ss -nlpt | grep mysqld > /dev/null
[root@192 ~]# echo $?
1

5.文件系统

### Linux运维日常巡检脚本示例 以下是几个常见的Linux运维日常巡检脚本,涵盖了CPU使用率、内存状态、磁盘空间以及服务运行情况等多个方面。 #### 1. CPU 使用率检测脚本 此脚本会定期检查系统的平均负载,并在超过设定阈值时发出警告。 ```bash #!/bin/bash THRESHOLD=80 LOAD=$(top -bn1 | grep "load average:" | awk '{print $10 * 100}') if (( $(echo "$LOAD > $THRESHOLD" | bc -l) )); then echo "High Load Average: ${LOAD}%" fi ``` 该脚本通过 `top` 命令获取当前系统负载并将其转换为百分比形式进行比较[^1]。 #### 2. 内存使用状况监测脚本 这个脚本可以用来监控物理内存和交换分区的使用情况。 ```bash #!/bin/bash MEM_THRESHOLD=75 SWAP_THRESHOLD=50 FREE_MEM=$(free -m | awk '/Mem:/ {total=$2; used=$3} END {printf("%.2f", (used/total)*100)}') SWAP_USAGE=$(free -m | awk '/Swap:/ {swap_total=$2; swap_used=$3} END {if(swap_total>0){ printf("%.2f", (swap_used/swap_total)*100)}}') if (( $(echo "$FREE_MEM > $MEM_THRESHOLD" | bc -l) )); then echo "Memory Usage High: ${FREE_MEM}%" fi if [[ ! -z "${SWAP_USAGE}" && $(echo "$SWAP_USAGE > $SWAP_THRESHOLD" | bc -l) ]]; then echo "Swap Space Usage High: ${SWAP_USAGE}%" fi ``` 上述代码片段利用了 `free` 工具来计算可用内存比例及交换区占用比率[^1]。 #### 3. 磁盘空间检查脚本 下面展示了一个简单的磁盘空间监视器,它能够识别哪些挂载点超过了指定界限。 ```bash #!/bin/bash DISK_LIMIT=90 for MOUNT_POINT in $(df --output=target | tail -n +2); do USAGE=$(df -Pkh "$MOUNT_POINT" | awk 'NR==2 {sub(/%/,"",$5); print $5}') if [ "$USAGE" -ge "$DISK_LIMIT" ];then echo "[ALERT] Disk space on '$MOUNT_POINT' is critically low at ${USAGE}%." fi done ``` 这段程序遍历所有的文件系统挂载点,并报告任何接近满额的状态[^1]。 #### 4. 关键进程存活验证脚本 最后提供一种方法去确认某些特定的服务是否正在正常运作当中。 ```bash #!/bin/bash declare -a SERVICES=("sshd" "nginx" "mysql") for SERVICE in "${SERVICES[@]}";do ps cax |grep -q "^${SERVICE}$" RESULT=$? if [ $RESULT -ne 0 ];then echo "Service '${SERVICE}' has stopped unexpectedly!" fi done ``` 这里定义了一组需要持续跟踪其健康状态的关键后台守护进程列表。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值