[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: NFSv3 Problem



On Tue, Feb 06, 2001 at 12:06:16AM -0500, Fraser Campbell wrote:
> Francis 'Dexter' Gois <fg@tiscali.be> writes:
> 
> > Not sure, but i think your problem is not with the NFS but with the ext2fs 
> > filesystem, which cannot handle files larger than 2gb. 
> 
> Yes, ext2's maximum file size is 1 byte less than 2 GB (2147483647 bytes.

Bzzt.  Wrong.  This is a limit of 2.2 and earlier kernels on 32 bit
hardware.  It has -NOTHING- to do with the file system per se: you will
see exactly the same situation on Reiserfs, NFS (exported from a 64 bit
machine even!), and every other file system.

Why?  Try 'man lseek' and note that the size of off_t, which is a 32 bit
number on 32 bit platforms.  There are lots and lots of library and system
calls that expect or return something of type off_t, which can not exceed
32 bits on a 32 bit machine without some hackery.  (See google for the
'large filesystem summit' for how ugly that hackery is.)

The exact same file systems -do- support huge files on 64 bit machines.
Why?  Again, off_t is a 64 bit number on a 64 bit machine.

> If the remote filesystem is ext2 then this is definitely the problem.   The
> 2.4 kernel gets around this problem at least with some filesystems (perhaps
> still not with ext2 though) ... if you really need to create files > 2GB then
> you should upgrade your kernel.  I've been running woody with 2.4 kernels
> (test and "stable") for months without any problems, YMMV.

Doesn't matter -what- the remote file system type is.

Neither NFS nor glibc supports large files on 2.2 kernels.  Period.  Not
with e2fs, not with nfs, not with anything.

If you need files >=2G, you need a newer kernel or a 64 bit machine.



Reply to: