以下输出(来自运行 CentOS 6.6 的 Vagrant VM)大部分是不言而喻的:
[root@localhost ~]# echo 131072 > /proc/sys/fs/inode-max
-bash: /proc/sys/fs/inode-max: No such file or directory
[root@localhost ~]# sysctl -q -p
[root@localhost ~]# echo 'fs.inode-max = 131072' >> /etc/sysctl.conf
[root@localhost ~]# sysctl -q -p
error: "fs.inode-max" is an unknown key
[root@localhost ~]# man proc | col -b | grep -A6 '/proc/sys/fs/inode-max$'
/proc/sys/fs/inode-max
This file contains the maximum number of in-memory inodes. On
some (2.4) systems, it may not be present. This value should be
3-4 times larger than the value in file-max, since stdin, stdout
and network sockets also need an inode to handle them. When you
regularly run out of inodes, you need to increase this value.
[root@localhost ~]# uname -a
Linux localhost.localdomain 2.6.32-504.el6.x86_64 #1 SMP Wed Oct 15 04:27:16 UTC 2014 x86_64 x86_64 x86_64 GNU/Linux
[root@localhost ~]#
如何协调暗示这将不存在的手册页声明在 2.4 内核上,事实上它不存在于这个 2.6 内核上?
答案1
这man7.org 中的手册页在 Debian 中有一个更有用的描述:
/proc/sys/fs/inode-max
(仅在 Linux 2.2 之前存在)该文件包含内存中 inode 的最大数量。该值应比 file-max 中的值大 3-4 倍,因为 stdin、stdout 和网络套接字也需要 inode 来处理它们。当您经常用完 inode 时,您需要增加此值。
从Linux 2.4开始,inode数量不再有静态限制,并且该文件被删除。
根据最后一句话,它不存在,因为不需要。