如何在 Linux 上释放 Inode 使用量?

linuxoperating systemopen source更新于 2026/2/15 0:07:17

inode(也称为索引节点)是一种用于描述文件系统对象的数据结构,通常存储在文件系统目录中。

我们可以使用以下命令 − 检查本地计算机上不同 inode 的大小。

df -

上述命令称为 df 命令,它是一个 Linux 实用程序命令,用于获取磁盘上可用空间的详细信息。

运行上述命令后,您将看到类似如下的输出 −

immukul@192 ~ % df -i
Filesystem 512-blocks Used Available Capacity iused ifree
/dev/disk1s5s1 236568496 44429928 45432792 50% 559993 1182282487
devfs 377 377 0 100% 652 0
/dev/disk1s4 236568496 6293880 45432792 13% 4 1182842476

我们可以在输出中注意到,一个驱动器,即 devfs 驱动器,已被完全使用,在这种情况下,我们将无法向其写入任何新内容。

现在我们需要释放该 inode 的使用情况,以便以后使用。

为此,我们可以创建一个 shell 脚本来实现这一点,或者可以运行以下命令 −

首先,使用以下命令 −

查找具有大 inode 的根文件夹
for d in /*; do echo $d; find $d |wc -l; done

上述命令需要一些时间,但它会打印具有大 inode 的根文件夹。如果您已经知道具有大 inode 的目录,则可以将上述命令替换为以下命令 −

for d in /devfs; do echo $d; find $d |wc -l; done

现在您只需删除 linux-headers 即可释放一些空间。为此,只需运行以下命令 −

sudo apt-get autoremove linux-headers-x.x

将 x.x 替换为先前版本的 linux-headers,即可完成。

输出

immukul@192 ~ % df -i
文件系统 512 块 已用 可用容量 iused ifree
/dev/disk1s5s1 236568496 44429928 45432792 50% 559993 1182282487
devfs 277 277 0 74% 652 0
/dev/disk1s4 236568496 6293880 45432792 13% 4 1182842476

另一种方法是使用下面显示的命令,这将帮助我们实现相同的结果。

只需在终端中输入下面显示的命令即可。 −

sudo find . -xdev -type file | cut -d "/" -file 2 | sort | uniq -c | sort -n

输出

immukul@192 ~ % df -i
Filesystem 512-blocks Used Available Capacity iused ifree
/dev/disk1s5s1 236568496 44429928 45432792 50% 559993 1182282487
devfs 207 207 0 63% 652 0
/dev/disk1s4 236568496 6293880 45432792 13% 4 1182842476

相关文章


有用资源