如何增加 Linux 中分配的最大 inode 数量?

如何增加 Linux 中分配的最大 inode 数量?

我有一台 Centos 6 服务器,运行内核 2.6.32-279.19.1.el6.x86_64。

我遇到了一个问题,系统正在达到最大数量已分配inode。此时,inode-state 返回以下内容:

# cat /proc/sys/fs/inode-state
279522  48040   0       0       0       0       0

我有 48040 个可用的 inode,但是这个服务器每天都会达到限制几次(这是一个繁忙的数据库服务器)。

请注意,我说的不是已使用的 inode,而是文件系统中定义的 inode。这很好,因为当我运行 df -i 时,使用率只有 14%。

我如何增加分配的 inode 限制?我发现 inode-max 在内核 2.2 中被删除了,并且找不到与此相关的任何其他参数。

- - 编辑 - -

使用的文件系统是 ext4,以下是 df -i 的输出:

# df -i
Filesystem            Inodes   IUsed   IFree IUse% Mounted on
/dev/sda1            12804096 1783423 11020673   14% /
tmpfs                33062480      11 33062469    1% /dev/shm

答案1

当你创建 ext2/ext3/ext4/ 文件系统时,你可以使用 -N 来精确指定 inode 的数量。一旦文件系统创建,你就不能改变它的值。但如果你使用 LVM,你仍然可以通过使用 resize2fs 扩展文件系统来添加 inode 数量。

相关内容