探索者的博客
2025-06-18 09:49:46 217

宝塔面板每月定时删除日志

作者头像 探索者
宝塔面板每月定时删除日志

宝塔面板每月定时删除日志

find /www/wwwlogs -type f -name "*.log" -exec truncate -s 0 {} \;
作用:将匹配到的日志文件内容清空,但保留文件本身(文件大小变为 0 字节)。
优点:
不会改变文件的权限、所有者、创建时间等元数据。
不会影响正在写入日志的进程(如 Nginx/Apache),因为文件 inode 不变。
缺点:
磁盘上仍会保留大量空文件,占用 inode 资源(对大文件系统影响较小)。
日志文件名不会被清理,可能导致目录下文件过多。
适用场景:
需要保留日志文件结构(如文件名、权限)。
避免重启服务(如 Nginx/Apache),因为它们可能锁定日志文件。

find /www/wwwlogs -type f -name "*.log" -exec rm -f {} \;
作用:将匹配到的日志文件彻底删除,释放磁盘空间。
优点:
完全释放磁盘空间(包括 inode)。
目录下不会残留空文件,结构更简洁。
缺点:
如果日志服务(如 Nginx)正在写入文件,可能会继续向已删除的文件写入(文件被标记为删除,但进程仍持有文件句柄)。
需要重启服务或重新配置日志路径,才能生成新的日志文件。
适用场景:
不需要保留任何历史日志。
可以接受服务重启或重新加载配置。

代码结束

评论区

评论者头像

张三

2025-06-16

非常实用的文章,我学到了很多关于前端性能优化的知识。特别是缓存策略部分,对我帮助很大。

评论者头像

李四

2025-06-15

代码分割确实是提高前端性能的重要手段,请问作者有没有实际项目中遇到的代码分割最佳实践可以分享?

作者头像
探索者 作者
2025-06-16

感谢提问!在实际项目中,我通常会根据路由、组件和第三方库进行代码分割。对于大型组件库,可以考虑使用动态导入来实现按需加载。