我有一个 inode 使用率为 100% 的磁盘驱动器(使用 df -i
命令)。但是在大量删除文件后,使用率仍然是 100%。
那么正确的方法是什么?
磁盘空间使用率较低的磁盘驱动器怎么可能比磁盘空间使用率较高的磁盘驱动器具有更高的 Inode 使用率?
如果我压缩大量文件是否有可能会减少使用的 inode
计数?
原文由 neversaint 发布,翻译遵循 CC BY-SA 4.0 许可协议
我有一个 inode 使用率为 100% 的磁盘驱动器(使用 df -i
命令)。但是在大量删除文件后,使用率仍然是 100%。
那么正确的方法是什么?
磁盘空间使用率较低的磁盘驱动器怎么可能比磁盘空间使用率较高的磁盘驱动器具有更高的 Inode 使用率?
如果我压缩大量文件是否有可能会减少使用的 inode
计数?
原文由 neversaint 发布,翻译遵循 CC BY-SA 4.0 许可协议
1 回答1k 阅读✓ 已解决
1 回答713 阅读✓ 已解决
3 回答734 阅读✓ 已解决
1 回答1.5k 阅读
1 回答850 阅读✓ 已解决
2 回答630 阅读✓ 已解决
1 回答689 阅读
即使磁盘不是很满,磁盘也很容易使用大量 inode。
一个 inode 被分配给一个文件,因此,如果您有大量文件,每个文件都是 1 个字节,那么您将在磁盘用完之前很久就用完 inode。
如果文件有多个硬链接,删除文件也可能不会减少 inode 计数。正如我所说,inode 属于文件, 而不是 目录条目。如果一个文件有两个链接到它的目录条目,删除一个不会释放 inode。
此外,您可以删除目录条目,但如果正在运行的进程仍然打开文件,则不会释放 inode。
我最初的建议是删除所有可以删除的文件,然后重新启动机器以确保没有进程保持打开文件。
如果您这样做了,但仍然有问题,请告诉我们。
顺便说一句,如果您正在寻找包含大量文件的目录,此脚本可能会有所帮助: