为什么 e-cryptfs 不断填满 /tmp?

为什么 e-cryptfs 不断填满 /tmp?

由于某些愚蠢的原因,Ubuntu 14.10 现在堆满了/tmp文件。有数百万个。

dmesg向我展示了数千行这样的代码,

[15686.146977] ecryptfs_create: Failed to create file inlower filesystem
[15686.376336] ecryptfs_do_create: Failure to create dentry in lower fs; rc = 

最后,我不得不从记忆棒启动并自行运行rm -rf /tmp和重新创建。这个问题的原因是什么?我升级了系统,它工作了一段时间。然后它给我带来了问题,当我重新启动时,我得到了大量错误。我花了一段时间才找到它,但这似乎不是一次性事件。现在我的磁盘已满,由于所有这些临时文件,我无法执行任何写入磁盘的操作。

更新

有趣的是,其中的所有文件/tmp都包含 cups ppd 文件的内容……

*PPD-Adobe: "4.3"
*% ===============================================
*% Disclaimer:  The above statement indicates
*% that this PPD was written using the Adobe PPD
*% File Format Specification 4.3, but does not
*% intend to imply approval and acceptance by
*% Adobe Systems, Inc.
*% ===============================================
*%
*% ===============================================
*% PPD for Samsung M262x 282x Series CUPS
*% For Linux Only
*% ===============================================

(此处文件被截断)。

进一步来说/var/log/cups/error_log,我有很多这样的条目......

E [timestamp] Unable to create "/var/cache/cups/job.cache.N": No space left on device
E [timestamp[ Unable to create "/var/spool/cups/c00196.N": No space left on device
E [timestamp] Unable to create "/etc/cups/subscriptions.conf.N": No space left on device
E [timestamp] Unable to create "/var/cache/cups/job.cache.N": No space left on device
E [timestamp] Unable to create "/var/spool/cups/c00196.N": No space left on device

经过进一步检查,我发现这些都是指向同一个 ppd 文件的符号链接。

find . -not -type d -exec ls -al {} \;
./5452f859dd8ec -> /etc/cups/ppd/Samsung-M262x-282x-Series.ppd
./5452fb4f958b3 -> /etc/cups/ppd/Samsung-M262x-282x-Series.ppd
./5452fa54e4d05 -> /etc/cups/ppd/Samsung-M262x-282x-Series.ppd
./5452f4b801d88 -> /etc/cups/ppd/Samsung-M262x-282x-Series.ppd

答案1

看来这是一个已报告的错误。尽管极难发现。

此错误已在 system-config-printer - 1.5.3+20141027-0ubuntu1 软件包中修复

并且,在更新日志中,

 o Fixed infinite loop generating millions of links in /tmp when PPD file
   requested from a print queue is not readable (LP: #1156398,
   Closes: #764253).

相关内容