0

I'm having a problem where apache2 won't start at all on my VPS, and it outputs this error:

[Mon May 09 07:00:38 2011] [emerg] (28)No space left on device: mod_fcgid: Can't create shared memory for size 13018600 bytes

I know for a fact that I have enough memory (I have 2 gb available plus 1 gb burstable).

Any ideas on what it could be?

EDIT:

If it is any help, the VPS is running on OpenVZ and the guest operating system is Ubuntu 10.04 64bit

3 Answers 3

1

@dgrimbergen is right. Check this for example: http://blog.forestsoft.de/2011/01/shared-memory-issue-with-mod_fcgid/

If not, is the sharemempath set in your Apache config (httpd.conf or apache2.conf)?

SharememPath /var/run/fcgid_shm

Make sure this directory exists, is chmod "700" and owned by the same owner as the webserver is running under (www / www-data).

1
  • I'm trying to add SharememPath /var/run/fcgid_shm. I'll post back with the result. May 9, 2011 at 13:31
0

Something is using up all shared memory. As root run:

ipcs -m

This will give you a list of all shared memory allocations. The second column (shmid) gives you the id of the allocation.

If you want to remove some allocations, you can use:

ipcrm -m

It would be better to find out why a process is allocation all the memory and take steps against that (or get more memory).

1
  • Absolutely nothing is appearing with ipcs -m. Any ideas? May 9, 2011 at 13:28
0

For me, this occurred because the /var filesystem ran out of inodes. This shows an example of a system that is running out of free inodes:

$ df -i /var
Filesystem          Inodes  IUsed IFree IUse% Mounted on
/dev/mapper/cis-var 327680 277671 50009   85% /var

Just to be clear, when the inodes run out, the same error will occur as for a filesystem that has run out of free blocks, i.e. "Errno (28)No space left on device".

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .