Chinaunix

标题: linux文件的大小为什么限制在2Gb [打印本页]

作者: nalevoli    时间: 2003-10-22 18:10
标题: linux文件的大小为什么限制在2Gb
linux使用三次间接指针索引得到文件大小可以达到10^30 * 10^12=4000GB
但目前它的最大文件大小被linux内核限制为2GB,只能读出2GB的数据。

这个我一直不明白为什么会是这样,在2.4的内核中,llseek函数使用来修改
文件的当前读写位置,返回值是一个long long的偏移量。即使在32位平台上
也至少占用64位的数据宽度。按理说完全可以读出4TB大小的文件,但不知道内核
哪儿限制了2GB的文件大小。
作者: qjlemon    时间: 2003-10-23 09:46
标题: linux文件的大小为什么限制在2Gb

  1. $dd if=/dev/zero of=test.dat bs=1048576 count=5000
  2. 5000+0 records in
  3. 5000+0 records out
  4. $ls -l test.dat
  5. -rw-rw-r--    1 lemon wheel      5242880000 Oct 23 09:44 test.dat
  6. $uname -a
  7. Linux dell 2.4.7-10smp #1 SMP Thu Sep 6 17:09:31 EDT 2001 i686 unknown
  8. $mount
  9. /dev/sda1 on / type ext3 (rw)
复制代码

作者: nalevoli    时间: 2003-10-23 10:41
标题: linux文件的大小为什么限制在2Gb
最后一个是不是写错了 mount /dev/zero  on type ext3
那你说是mount到ext3的文件系统上就可以读出这个5G的文件吗?
mount到ext2的文件系统上不行么?
作者: qjlemon    时间: 2003-10-23 10:58
标题: linux文件的大小为什么限制在2Gb
ext3只是在ext2基础上增加了日志支持,可以用ext2的方式mount ext3文件系统。
作者: livelybear    时间: 2003-10-25 17:19
标题: linux文件的大小为什么限制在2Gb
请问是在什么情况下操作的,能说的具体一点吗?

感觉不象是Linux的问题。
作者: strawcony    时间: 2003-12-12 23:56
标题: linux文件的大小为什么限制在2Gb
ext文件系统才有2G的限制,ext2文件系统是4T的限制




欢迎光临 Chinaunix (http://bbs.chinaunix.net/) Powered by Discuz! X3.2