在 Unix 中自动清理 tmp 目录

Automatically cleanup tmp directory in Unix

我正在使用 Play 框架实现我自己的文件缓存服务器,并将我的缓存文件放在 /tmp 目录中。

但是我不知道 OS 是如何管理 /tmp 目录的。我想知道的是 OS 是否会自动清理一些足够旧的文件,或者很长时间没有访问过的文件。

我 运行 我的服务器在 Docker 容器中,基于 Debian jessie。

您的 OS 不会清理 /tmp。某些 Unix 变体会在重新启动时将其清除。你需要自己做这件事。

 find /tmp/yourpath -mtime +30 -type f -exec rm {} \;

例如。

但是Docker有点特殊,因为容器是一个封装层。 find 仍然可以解决问题,但您可能只是转储并重新启动容器 'fresh' 并丢弃旧容器。