I came across this condition various times, if search on the google you will get lots of solutions and most of those will suggest to kill semaphores and restart Apache like below.
When you get No space left on device even you have enough space left on server. You can check open semaphores with below command
#ipcs -s
If you see list of semaphores which owns by Apache, you need to kill them and restart Apache.
To increase limits, edit /etc/sysctl.conf and append below line in file.
kernel.msgmni = 1024
kernel.sem = 250 256000 32 1024
Once you done run below command.
#sysctl -p
Hope this help.
When you get No space left on device even you have enough space left on server. You can check open semaphores with below command
#ipcs -s
------ Semaphore Arrays --------
key semid owner perms nsems
0x00000000 655360 apache 600 1
0x00000000 753665 apache 600 1
If you see list of semaphores which owns by Apache, you need to kill them and restart Apache.
#for
semid
in
`ipcs -s |
grep
apache |
cut
-f2 -d
" "
`;
do
ipcrm -s $semid;
done
Most of the time it works, but sometime we need to increase semaphore array limits specially when we have large number of Virtual Hosts in Apache. Default semaphore array limit is 128, some time we need to increase it as per our requirements.
You can check current limit with below command.
#ipcs -ls
or
#cat /proc/sys/kernel/sem
kernel.msgmni = 1024
kernel.sem = 250 256000 32 1024
Once you done run below command.
#sysctl -p
Hope this help.
No comments:
Post a Comment