NFSv2 Wrong FS Size

perryh at pluto.rain.com perryh at pluto.rain.com
Wed Feb 4 00:12:37 PST 2009


> 1755708928*1024/512 = 3511417856 blocks.  This number is larger
> than 2^31, which techinically isn't a problem because the NFSv2
> spec says that the filesystem size is unsigned.  FreeBSD treats it
> as signed, though, so it can display "negative" free space when
> root starts using its 8% reserve, so your unsigned 3511417856 gets
> printed as a signed -783549440, which messes everything up.
...
> you could rebuild "df" to print its numbers as unsigned instead of
> signed.  Just watch out if your local filesystems start eating
> into their 8% reserve, since they'll start reporting huge values.

Or patch "df" to print local filesystem sizes as signed -- so that
the reserve reporting still works -- and NFS as unsigned to match
the spec.


More information about the freebsd-questions mailing list