2

我实际上是在 Linux 环境中工作,我的 tmp 文件夹中的文件有一些问题,今晚创建了很多大小为 0 的文件,我们今天早上设法清除了它们,但仍然存在一个问题,. 该目录的大小约为 21 mb,这似乎不正确,有什么方法可以解释里面的内容以及如何将其大小重置为更常见的大小?

$ls -al
total 87644
drwxrwxrwt  3 root root 21905408 Dec  5 11:06 .
drwxr-xr-x 30 root root     4096 Dec  4 22:10 ..

今天早上我们在这个目录中有大约 900 万个文件,我认为它是一些存储目录文件名或日志的数据库,有人可以为我点亮这一点吗?谢谢

4

1 回答 1

2

我不认为目录本身会减小大小,尽管它可能适用于某些文件系统类型(尽管我不知道)。换句话说,它保持在任何峰值大小。

如果要减少它,最简单的方法通常是在与旧目录相同的位置创建一个目录,移动文件,然后删除旧目录并重命名新目录以替换它。

如果您的系统很重要,您可能必须在单用户模式下执行此操作,以尽量减少影响其他用户的可能性。如果它只是你的盒子,你可能会在没有其他东西运行的情况下只做它。

这是目录的起点/tmp

mkdir /tmp_new
mv /tmp/* /tmp_new ; mv /tmp /tmp_old ; mv /tmp_new /tmp

/tmp_old然后您可以在完全删除之前检查以确保它是空的。

另一种可能性是尝试:

mv /tmp /tmp_old ; mkdir /tmp ; chmod 777 /tmp

这将有望保留目录中的打开文件(inode)/tmp_old,并在您的全新(较小)目录中创建新的临时文件。然后,如果可能的话,只需重新启动您的盒子(干净地)并删除/tmp_old目录。

您可能需要检查当前/tmp目录的权限,以确保为新目录正确设置它们。

于 2013-12-05T10:23:49.267 回答