我正在Linux上开发一些使用JetS3t从S3检索文件的超文本传输协议服务器软件。文件大小都在5MB左右。随着时间的推移,JetS3t会在/tmp目录中创建大量*.tmp文件。
但是,由于所有这些都运行在从不重启的服务器上,因此文件永远不会被丢弃。相反,它们最终会填满根分区,导致许多问题(如丢失的HTTP连接等)。
是否有一种方法可以配置JetS3t,使其在自动清理后自动清理?
谢谢!
发布于 2012-05-01 06:58:16
我想出了一个不优雅但有效的解决方案。我只是添加了一个cron作业,它会定期运行以下命令:
find /tmp/*tmp -amin +10 -exec rm -f {} \;
基本上,find会找到至少10分钟前访问过的所有JetS3t的临时文件(多亏了-atime +10),然后将其删除。
这模拟了某些系统上存在的tmpreaper或tmpwatch的行为。对于其他使用这些应用程序的人,请注意,因为它们可以促进一些setuid exploits.,我意识到我的方法也可能受到相同的漏洞的影响,但现在我别无选择。
https://stackoverflow.com/questions/10391267
复制相似问题