df shows negative values for used?

Solution 1:

I think this might mean that you have gone beyond what is reserved as a root only space (Default is 5% on ext3 I think):

$ sudo tune2fs -l /dev/sda1 | grep -i 'Reserved block count'
Reserved block count:     1877194

Reserved block count is a certain amount of blocks that only the root user can use after the disk is almost full (This prevents a normal user from filling up the fs and causing things to break). From man tune2fs:

   -m reserved-blocks-percentage 

Set the percentage of the filesystem which may only be allocated by privileged processes. Reserving some number of filesystem blocks for use by privileged processes is done to avoid filesystem fragmentation, and to allow system daemons, such as syslogd(8), to continue to function correctly after non-privileged processes are prevented from writing to the filesystem. Normally, the default percentage of reserved blocks is 5%.

So I think something is taking up space fast as the root user. You can use du -hcs / and drill down from there to find where the files are that are using the space. If you think it might be something creating large files, you could also use the find command.

Solution 2:

I think it is a file system corruption. You should unmount the partition and run a fsck.
Check also the logs and the console for any file system errors.