linux服务器长期使用宝塔自带计划任务,计划任务执行记录占用服务器空间过大,导致服务器根目录爆满,需要长期排查并删除
/www/server/cron 占用空间过大问题处理
/www/server/cron是什么内容?
/www/server/cron内存储的是通过宝塔面板创建的计划任务文件以及计划任务执行记录
/www/server/cron是否可以删除?
不建议整个目录删除因为整个目录删除之前创建的计划任务也会被删除,只需要删除.log文件即可
删除步骤
删除前占用16G
删除后效果300K
手动批量删除log文件命令
html
find /www/server/cron -type f -name "*.log" -exec rm -f {} \;
命令解读
bash
find /www/server/cron:在/www/server/cron目录下搜索文件。
-type f:仅匹配类型为普通文件的项。
-name "*.log":匹配所有以.log结尾的文件名。
-exec rm -f {} \;:对匹配到的每个文件执行rm -f命令,删除它们。
永久解决方案
在宝塔计划任务内添加以下命令
html
find /www/server/cron -type f -name "*.log" -exec rm -f {} \;
手写计划任务文件
bash
#!/bin/bash
PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin:~/bin
export PATH
find /www/server/cron -type f -name "*.log" -exec rm -f {} \;
echo "----------------------------------------------------------------------------"
endDate=`date +"%Y-%m-%d %H:%M:%S"`
echo "★[$endDate] Successful"
echo "----------------------------------------------------------------------------"