Postfix decides that it does not have enough disk space
The reason your showing lots of space is because your linode image is 956mb in size, and you have 20gb in total on your account. Hence, your actual server is only 956mb in size (giving you 6.9mb currently avilable). To solve- shutdown your linode instance, resize the image to use more of your account (suggest using it all, unless you have other images you need to run).
Your root directory is full which is the issue. There are a few things you can do right away. One, run an apt-get clean all. This will delete any downloaded packages sitting on the file system. Next, do the following:
cd /var/log
du -hs
This will show how much space is being used for logs. If it is significant, go ahead and issue du -hs *. This will show how much space each directory in /var/log is using. Look for one that is using the most space. Enter it (cd where is the name of the problem directory. Issue a ls -lh and look at the file sizes for each. If the files end with .gz then you can simply delete them (rm ) or if there is a file that is large but not ending in .gz and you don't care about the contents issue:
> <filename>
Again, where is the name of the problem file. This should get you back to running and I am fairly confident you'll find your issue in /var/log.
Ok, I can see the problem, though I'm not sure where the rest of that reported disk space is. This line:
/dev/xvda 679M 644M 6.9M 99% /
says that your root filesystem is only 679MB in size, of which you only have 6.9MB free, (the amount reported in the error message).
/var/spool/postfix
is in that filesystem (as is everything else). So if you're supposed to have 20GB available, then your disk hasn't been partitioned properly. If it's your own server, run fdisk -l /dev/xvda
. That should show you the partition table. If it's a hosted service, talk to your provider.