imagemagick不会删除tmp文件

Mat*_*lda 5 rmagick imagemagick carrierwave

我有一个使用Carrierwave,S3和rmagci的应用程序.或多或少地关注http://railscasts.com/episodes/253-carrierwave-file-uploads,但只是上传到S3而不是本地.

我注意到在创建映像后,public/uploads /中的临时文件不会被删除.这导致我的计算机随着时间的推移而感到崩溃.

我环顾四周,找到的唯一解决办法就是写一个cron工作来删除它们http://www.imagemagick.org/discourse-server/viewtopic.php?f=2&t=15960

是否有更好的方法在代码而不是cronjob中执行此操作?

Bas*_*vis 5

截至 2013 年 1 月,还没有删除临时文件的官方方法,因此 imagemagic 留给您自己完成。我还使用了一个每 20 分钟运行一次的 cron 作业,因为临时文件的大小超过 10 GB。

  • `sudo find /tmp/ -name "magick-*" -type f -delete` 这将完成这项工作,还将其发布为更好的可见性的答案 (2认同)

小智 5

这意味着您的ImageMagick安装无法正常运行!

它在tmp中留下magick-*文件这一事实表明ImageMagick进程已经死亡,这就是它没有删除这些文件的原因.您应该配置内存限制等.请参阅http://www.imagemagick.org/script/resources.php