tmpfs 文件系统在以下方面有哪些限制:
- 最大文件大小
- 最大文件系统大小
- 最大子目录数
- 最大符号链接深度
我使用的是 centOS 8。 tmpfs 通过以下方式安装:
[root@sst ~]# cat /etc/fstab
[...]
tmpfs /mnt/mytmpfs tmpfs defaults,nr_inodes=1k,size=30% 0 0
我找不到有关此主题的任何有用信息。
答案1
编辑:既然您提到您正在运行 CentOS,我正在回答有关 tmpfs 的 Linux 实现的问题。我写此澄清是为了回应提到以下问题的评论tmpfs 的 SunOS 实现(这似乎是原始实现)或其他类似 *nix 的操作系统中的实现可能有所不同。
来自Linux 内核文档:
tmpfs 具有三个用于调整大小的挂载选项:
size
:此 tmpfs 实例分配的字节数限制。默认情况下是物理 RAM 的一半,没有交换。如果您的 tmpfs 实例过大,机器将死锁,因为 OOM 处理程序将无法释放该内存。nr_blocks
:与大小相同,但以 PAGE_SIZE 为单位。nr_inodes
:该实例的最大索引节点数。默认值是物理 RAM 页面数量的一半,或(在具有 highmem 的机器上)lowmem RAM 页面数量的一半,以较小者为准。
因此,当您指定 时inodes=1k
,您将文件数量限制为 1,000。当您指定 时size=30%
,您将文件系统总大小限制为 RAM 的 30%。
否则,我认为没有施加任何限制,并且,正如手册页:
- 当物理内存压力需要时,文件系统可以使用交换空间。
- 文件系统仅消耗存储文件系统当前内容所需的物理内存和交换空间。
根据规定,符号链接解析深度是由操作系统而不是文件系统强制要求的path_resolution 手册页:
目前在 Linux 上实现,解析路径名时遵循的符号链接的最大数量为 40。