Crontab 本身不负责日志轮转,但它可以用来定期执行日志轮转脚本 很多朋友在管理服务器时,都会遇到日志文件不断膨胀的问题。直接删除肯定不行,但手动备份又太麻烦。这时候,一个经典的组合方案就派上用场了:用Crontab定时调用一个简单的脚本,来自动完成日志的轮转和归档。下面,我们就来拆解一下具体的

很多朋友在管理服务器时,都会遇到日志文件不断膨胀的问题。直接删除肯定不行,但手动备份又太麻烦。这时候,一个经典的组合方案就派上用场了:用Crontab定时调用一个简单的脚本,来自动完成日志的轮转和归档。下面,我们就来拆解一下具体的操作步骤。
长期稳定更新的攒劲资源: >>>点此立即查看<<<
example.log:#!/bin/bash
LOG_FILE="example.log"
BACKUP_DIR="/var/log/example_backups"
DATE=$(date +"%Y-%m-%d")
# 创建备份目录(如果不存在)
mkdir -p "$BACKUP_DIR"
# 将日志文件重命名为带有日期的文件
mv "$LOG_FILE" "${BACKUP_DIR}/example_${DATE}.log"
# 如果需要,可以在这里压缩旧日志文件
gzip "${BACKUP_DIR}/example_${DATE}.log"
# 通知应用程序重新创建日志文件,或者重启应用程序
touch "$LOG_FILE"
这个脚本干了这么几件事:先确保备份目录存在,然后把当前的日志文件按日期重命名并移走,接着可以选择压缩一下以节省空间,最后创建一个新的空日志文件,让应用程序继续写入。
chmod +x /path/to/your/log_rotation_script.sh
crontab -e
0 1 * * * /path/to/your/log_rotation_script.sh
至此,整个设置就完成了。Crontab会像一个不知疲倦的哨兵,严格按照你设定的时间表去触发那个轮转脚本。当然,脚本里的备份路径、压缩选项,以及Crontab的执行频率,都可以根据你的实际需求灵活调整,直到完全贴合你的运维场景。
侠游戏发布此文仅为了传递信息,不代表侠游戏网站认同其观点或证实其描述