实用脚本大全

实时监控ens33网卡流量信息

#!/bin/bash
while :
do
        echo "本地网卡ens33流量信息如下: "
        ifconfig ens33 | grep "RX pack"  | awk '{print $5}'

        ifconfig ens33 | grep "TX pack"  | awk '{print $5}'
        sleep 2
done

实时监控本机·内存和硬盘剩余空间

#!/bin/bash

disk=$(df / | awk '/\//{print $4}')

mem=$(free  | awk '/Mem/{print $4}')

while :
do
        if [ $disk -le 512000 -a $mem -le 1024000 ]
        then
                mail -s warning root <<-EOF
                Insufficient resources,资源不足
                EOF
        fi
done

数据库备份单循环

#!/bin/bash
DATE=$(date +%F_%H-%M-%S)
HOST=1ocalhost
USER=backup
PASS=1
BACKUP_DIR=/data/db_backup
DB_LIST=$(mysql -h$HOST -u$USER -p$PASS -s -e "show databases;" 2>/dev/nul1 | egrep -v "Database|information_schema mysql|performance_schema|sys")
    for DB in $DB_LIST;
    do
    BACKUP_NAME=$BACKUP_DIR/${DB}_${DATE}.sql
        if ! mysqldump -h$HOST -u$USER -p$PASS -B $DB > $BACKUP_NAME 2>/dev/null;
        then
            echo"$BACKUP_NAME 备份失败!"
        fi
    done

监控

#!/bin/bash

# 定义日志文件路径
LOG_FILE=“/var/log/server_monitor.log”

# 定义监控间隔时间(秒)
MONITOR_INTERVAL=300

while true
do
    # 获取CPU使用率
    CPU_USAGE=$(top -bn1 | grep “Cpu(s)” | awk ‘{print $2 + $4}‘)

    # 获取内存使用情况
    MEM_TOTAL=$(free -m | grep “Mem:” | awk ‘{print $2}‘)
    MEM_USED=$(free -m | grep “Mem:” | awk ‘{print $3}‘)
    MEM_USAGE=$((100 * $MEM_USED / $MEM_TOTAL))

    # 获取磁盘空间使用情况
    DISK_USAGE=$(df -h | awk ‘$NF==“/”{printf “%d”, $5}’)

    # 记录监控结果到日志文件中
    echo “$(date +%Y-%m-%d\ %H:%M:%S) CPU usage: $CPU_USAGE%, Memory usage: $MEM_USAGE%, Disk usage: $DISK_USAGE%” >> $LOG_FILE

    # 等待指定时间后再次执行监控
    sleep $MONITOR_INTERVAL
done

日志轮转

#!/bin/bash

LOGFILE=/var/log/app.log
BACKUP_DIR=/var/log/backup
BACKUP_NUM=10

if [ ! -d “$BACKUP_DIR” ]; then
  mkdir -p “$BACKUP_DIR”
fi

timestamp=$(date +“%Y%m%d%H%M%S”)
backup_file=“$BACKUP_DIR/app_$timestamp.log”

mv “$LOGFILE” “$backup_file”
touch “$LOGFILE”
gzip -f “$backup_file”

# 删除旧的备份文件
ls -t “$BACKUP_DIR”/*.gz | tail -n +$((BACKUP_NUM + 1)) | xargs rm -f

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值