Why df and du show different output

view full story

http://askubuntu.com – When I execute command df -h /tmp it says disk utilization is 100% but when it tried du -sh /tmp it says disk utilization is 2%. I want to know why these commands shows different output and these two commands work and what is the solution of this problem. /var is installed on it own file system .I am using Ubuntu 12.04 server edition on my vps account.Due to this problem utilization of /tmp 100% according to df some programs complain about free space in /tmp. (HowTos)