- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我们的应用程序服务器 (sunOS) 总是磁盘满了。我们的基础设施团队说这是由太多的“tail -f”进程引起的。因为app频繁轮转日志文件,导致死链接,没有磁盘空间?
我以前从未听说过这个。该命令真的会导致磁盘已满吗?
最佳答案
在对该文件的所有引用都消失之前,无法回收文件占用的空间。因此,任何打开该文件的进程都将阻止该文件从磁盘中删除。
一个活跃的tail -f
例如,跟随文件。
如果需要删除这些文件以释放磁盘空间(例如,因为它们非常大,或者它们的数量非常多),那么周围存在保存对它们的引用的进程将阻止它们被删除,并最终导致磁盘填满向上。
编辑以回应对另一个答案的评论:
您报告的诊断结果正是您在 Adam 和我所描述的情况下所期望看到的。 df
报告 56G
的磁盘正在使用中,并且 du
报告只有 10G
在文件夹中可见。差异是因为有46G
已从文件夹中删除但无法从磁盘物理删除的文件,因为某些进程持有对它们的引用。
自己试验这个很容易:找到一个可以安全使用的文件系统,然后创建一个庞大的文件。编写一个 C 程序,打开文件并进入无限循环。现在,请执行以下操作:
df
的输出rm
文件 df
的输出再次df
的输出再次df
的输出
rm
后不变ing 文件,但一旦停止程序就会改变(从而删除对文件的最后一个引用)。
/proc
获取信息。文件系统,如果你有的话。具体来说,找到
tail -f
之一的 PID进程(或您认为可能是原因的其他进程),然后查看目录
/proc/<pid>/fd
查看它打开的所有文件。
/proc/<pid>/fd
)
关于logging - "tail -f"使磁盘已满?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9799451/
我编写了一个函数来包含两个 DateTime 之间的小时列表。 但最后它看起来并不是很容易阅读,这让我想对它进行单元测试,即使我正在从事的项目根本没有进行单元测试。 所以我的问题是,是否有一种更易读或
我一定是漏掉了什么,因为我还没有在网上找到这个非常基本的问题的答案。我正在使用能够容纳三个 int 的缓冲 channel 值。 然后我使用三个 goroutine 来填充它,一旦缓冲 channel
我发现如果一个矩阵(几乎)满了,那么将它存储在稀疏中会导致(更多)更多的计算时间。 虽然以稀疏形式存储完整矩阵是微不足道的,但我只想知道这一事实背后的原因。 我的推测是稀疏索引读取将是计算时间的主要贡
root@root:~# sudo du -ch --max-depth=1 --exclude=/home/ / du: cannot access ‘/sys/kernel/slab/L2TP/I
基本上我想创建一个 UIProgressView 在 3 秒内从 0.0(空)到 1.0(满)。有人能指出我在 swift 中使用 NSTimer 与 UIProgressView 的正确方向吗? 最
我是一名优秀的程序员,十分优秀!