FINAL RESULT
I fixed this problem by resizing my xvda
partition from 700MB to 10GB. I used Linode’s control panel to do that, which involved shutting down the VPS, running the resize operation, and then booting it back up. Many thanks to everyone who provided insights and solutions; they were all instrumental and helpful.
ORIGINAL QUESTION
I’m running Postfix as my MTA, and it has randomly decided to stop accepting incoming email:
Sep 14 07:50:26 zulu postfix/smtpd[27946]: warning: not enough free space in mail queue: 6832128 bytes < 1.5*message size limit
In my postconf
:
message_size_limit = 10240000
queue_minfree = 25000000
All mail to my system is being rejected with 452 4.3.1 Insufficient system storage
.
I know little to nothing about partitions and related magic, I only know that Postfix is seemingly telling me that it has no space, when in fact my system has plenty of space:
Finally, Postfix is still delivering the failure notices to my postmaster@
account, so I’m really quite at a loss.
EDIT
root@zulu:/# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/xvda 679M 644M 6.9M 99% /
tmpfs 249M 0 249M 0% /lib/init/rw
udev 10M 112K 9.9M 2% /dev
tmpfs 249M 0 249M 0% /dev/shm
As far as I know, the mail queue is stored in /var/spool/postfix
. I’m not entirely sure how to determine if that is correct, but it seems correct:
root@zulu:/var/spool/postfix# ls -al
total 84
drwxr-xr-x 21 root root 4096 Sep 6 13:58 .
drwxr-xr-x 4 root root 4096 Sep 6 06:55 ..
drwx------ 2 postfix root 4096 Sep 14 08:37 active
drwx------ 2 postfix root 4096 Sep 13 13:19 bounce
drwx------ 2 postfix root 4096 Sep 6 06:55 corrupt
drwx------ 3 postfix root 4096 Sep 12 06:13 defer
drwx------ 3 postfix root 4096 Sep 12 06:13 deferred
drwxr-xr-x 2 root root 4096 May 4 17:30 dev
drwxr-xr-x 3 root root 4096 Sep 14 07:37 etc
drwx------ 2 postfix root 4096 Sep 6 06:55 flush
drwx------ 2 postfix root 4096 Sep 6 06:55 hold
drwx------ 2 postfix root 4096 Sep 14 08:37 incoming
drwxr-xr-x 2 root root 4096 Sep 14 07:37 lib
drwx-wx--T 2 postfix postdrop 4096 Sep 8 21:41 maildrop
drwxr-xr-x 2 root root 4096 Sep 12 06:13 pid
drwx------ 2 postfix root 4096 Sep 14 07:37 private
drwx--s--- 2 postfix postdrop 4096 Sep 14 07:37 public
drwx------ 2 postfix root 4096 Sep 6 06:55 saved
drwx------ 2 postfix root 4096 Sep 6 06:55 trace
drwxr-xr-x 3 root root 4096 Sep 6 06:55 usr
drwxr-xr-x 3 root root 4096 Sep 6 13:58 var
fdisk:
root@zulu:/# fdisk -l /dev/xvda
Disk /dev/xvda: 734 MB, 734003200 bytes
255 heads, 63 sectors/track, 89 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x00000000
Disk /dev/xvda doesn't contain a valid partition table
I should probably note that this is a Linode VPS.
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:
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:
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:
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, runfdisk -l /dev/xvda
. That should show you the partition table. If it's a hosted service, talk to your provider.