1
2
这可能集中在 怎样 您截断了文件。 杜 和 东风 报告不同的事情 this post on unix.com explains . 仅仅因为没有使用空间并不一定意味着它是自由的… |
2
3
在BSD中,目录条目只是对底层文件数据(称为inode)的众多引用之一。使用rm(1)命令删除文件时,只会减少引用计数。如果引用计数仍然为正数(例如,由于符号链接,文件具有其他目录条目),则不会删除基础文件数据。 较新的BSD用户通常不会意识到打开文件的程序也在保存引用。防止在进程使用基础文件数据时丢失。当进程关闭文件时,如果引用计数为零,则文件空间将标记为可用。此方案用于避免Microsoft Windows类型问题,因为某些未指定的程序仍将文件打开,因此该方案不允许删除文件。 观察这一点的一个简单方法是执行以下操作
在后台进程终止之前,/tmp/cat test使用的文件空间将保持分配状态,并且不可用,正如df(1)报告的那样,但是du(1)命令将无法解释它,因为它不再具有文件名。 注意,如果系统崩溃而进程没有关闭文件,那么文件数据仍然存在,但没有被引用,那么需要运行fsck(8)来恢复文件系统空间。 保持文件打开的进程是newsyslog(8)命令向syslogd或其他日志程序发送信号的原因之一,通知它们应该关闭日志文件,并在日志文件旋转后重新打开。 软更新还可以影响文件系统的空闲空间,因为实际的inode空间恢复可以延迟;可以使用sync(8)命令来鼓励这种情况更快发生。 |
3
-1
df——同步工作吗? |