不看后悔的Linux生产服务器Shell脚本分享

原创
ithorizon 7个月前 (10-04) 阅读数 31 #Linux

不看后悔的Linux生产服务器Shell脚本分享

在Linux生产服务器管理中,Shell脚本是一种非常强劲的工具。它可以帮助我们自动化日常任务,尽或许降低损耗工作高效能,降低人为谬误。以下是一些在生产服务器上非常有用的Shell脚本,期望对您有所帮助。

1. 检查系统CPU和内存使用情况

使用以下脚本可以实时监控CPU和内存使用情况:

#!/bin/bash

# 定义颜色

RED='\033[0;31m'

GREEN='\033[0;32m'

NC='\033[0m'

# 检查CPU使用率

cpu_usage=$(top -bn1 | grep "Cpu(s)" | sed "s/.*, *\([0-9.]*\)%* id.*/\1/" | awk '{print 100 - $1}')

# 检查内存使用率

mem_usage=$(free | grep Mem | awk '{print $3/$2 * 100.0}')

# 输出最终

echo -e "${GREEN}CPU使用率: ${cpu_usage}%${NC}"

echo -e "${GREEN}内存使用率: ${mem_usage}%${NC}"

2. 自动备份MySQL数据库

以下脚本可以将MySQL数据库备份到指定目录,并使用gzip进行压缩:

#!/bin/bash

# 定义数据库信息

DB_USER="root"

DB_PASSWORD="your_password"

DB_NAME="your_database"

BACKUP_DIR="/path/to/backup"

# 创建备份文件名

BACKUP_FILE="${BACKUP_DIR}/${DB_NAME}_$(date +%Y%m%d%H%M%S).sql.gz"

# 备份数据库

mysqldump -u${DB_USER} -p${DB_PASSWORD} ${DB_NAME} | gzip > ${BACKUP_FILE}

# 检查备份文件是否生成

if [ -f ${BACKUP_FILE} ]; then

echo "备份圆满: ${BACKUP_FILE}"

else

echo "备份落败"

fi

3. 定时清理日志文件

以下脚本可以自动清理指定目录下的日志文件,保留最近7天的日志文件:

#!/bin/bash

# 定义日志目录和保留天数

LOG_DIR="/path/to/log"

RETAIN_DAYS=7

# 清理日志文件

find ${LOG_DIR} -type f -mtime +${RETAIN_DAYS} -exec rm -f {} \;

# 检查清理最终

if [ $? -eq 0 ]; then

echo "日志清理圆满"

else

echo "日志清理落败"

fi

4. 自动更新系统软件包

以下脚本可以自动更新系统软件包,并提示用户重启系统:

#!/bin/bash

# 更新软件包

sudo apt-get update

sudo apt-get upgrade -y

# 检查更新最终

if [ $? -eq 0 ]; then

echo "软件包更新圆满,请重启系统以应用更新"

else

echo "软件包更新落败"

fi

5. 监控网络流量

以下脚本可以监控指定网络接口的流量,并记录到日志文件中:

#!/bin/bash

# 定义网络接口和日志文件

INTERFACE="eth0"

LOG_FILE="/path/to/log/traffic.log"

# 监控网络流量

while true; do

# 获取当前流量

RX=$(cat /sys/class/net/${INTERFACE}/statistics/rx_bytes)

TX=$(cat /sys/class/net/${INTERFACE}/statistics/tx_bytes)

# 记录到日志文件

echo "$(date) - RX: ${RX}, TX: ${TX}" >> ${LOG_FILE}

# 等待1秒

sleep 1

done

总结

以上是一些在生产服务器上非常有用的Shell脚本。通过这些脚本,我们可以轻松实现自动化管理,尽或许降低损耗工作高效能。在实际应用中,您可以选用自己的需求进行修改和扩展。期望这些脚本对您有所帮助。


本文由IT视界版权所有,禁止未经同意的情况下转发

文章标签: Linux


热门