13.4. Linux 中对大型文件的支持

最初,Linux 支持的最大文件大小为 2 GB。在大量使用多媒体之前,只要用户不在 Linux 中操纵大型数据库,这个大小已足够了。但由于服务器计算变得越来越重要,所以当使用一组应用程序必须使用的新接口时,对内核和 C 库进行了修改以支持大小大于 2 GB 的文件。当今,几乎所有的主要文件系统都提供 LFS 支持,从而允许您执行高端计算。表 13.2 “文件系统的最大大小(磁盘上格式)” 概述了 Linux 文件和文件系统的当前限制。

表 13.2. 文件系统的最大大小(磁盘上格式)

文件系统

文件大小(字节)

文件系统大小(字节)

Ext2 或 Ext3(1 kB 块大小)

234 (16 GB)

241 (2 TB)

Ext2 或 Ext3(2 kB 块大小)

238 (256 GB)

243 (8 TB)

Ext2 或 Ext3(4 kB 块大小)

241 (2 TB)

243-4096(16 TB-4096 位)

Ext2 或 Ext3(8 kB 块大小)(系统采用 8 kB 的页,与 Alpha 类似)

246 (64 TB)

245 (32 TB)

ReiserFS v3

246 (64 TB)

245 (32 TB)

XFS

263 (8 EB)

263 (8 EB)

NFSv2(客户端)

231 (2 GB)

263 (8 EB)

NFSv3(客户端)

263 (8 EB)

263 (8 EB)

[Important]Linux 内核限制

表 13.2 “文件系统的最大大小(磁盘上格式)” 介绍了有关磁盘上格式的限制。2.6 内核自身的大小限制同样适用于其处理的文件和文件系统大小。下面介绍了这些限制:

文件大小

在 32 位系统上,文件不能超过 2 TB(241 字节)。

文件系统大小

文件系统最大可以为 273 字节。但是,目前可用的硬件尚不会超出这一限制。