目录
背景
fastDFS本身没有提供批量删除的接口,所以当fdfs上传太多文件后会导致服务器空间不足而引发的一系列问题
原理
利用find命令查找指定时间前的数据并进行删除
利用crontab 定时调用脚本达到自动化运维的目的
脚本
创建脚本是个人习惯,方便管理,也可以直接将脚本内find 开头的行写到定时任务
创建目录及脚本
mkdir -p /opt/shell/
touch /opt/shell/fdfs_disk.sh
脚本内容
添加一下内容到fdfs_disk.sh文件并保存,
#! /bin/bash
#假设fdfs的数据存储目录为 /opt/fdfs/storage/data
#清除60天前修改的jpg后缀的文件
find /opt/fdfs/storage/data/* -mtime +60 -type f -name "*.jpg" |xargs -rm -f
#清除60天前修改的png后缀的文件
find /opt/fdfs/storage/data/* -mtime +60 -type f -name "*.png" |xargs -rm -f
授权
[root@wxf]# chmod a+x /opt/shell/fdfs_disk.sh
添加定时任务
执行crontab -e 给当前用户添加如下定时任务,代表每天晚上23点30分执行该脚本清除fdfs服务器60天前上传的jpg和png图片文件
30 23 * * * sh /opt/shell/fdfs_disk.sh