启动apache的时候 有时候会遇到这样的错误:No space left on device: Couldn’t create rewrite_map(XXXX)
第一眼看以为是磁盘没有空间了,其实不然;
没有空间,不存在的。。。。
细究发现其实是:IPC的资源占用问题,先用”ipcs”命令查一下当前用于已经使用了的信号量集合;apache已经分配了这么多
可以使用如下的指令,删除对应服务的信号量结
sem_list=$(ipcs -s | grep apache | awk ‘{print $2}‘) for i in $sem_list do ipcrm -s $i done 可以设置更改每个用户的semaphore array的最大数量
[[email protected] ~]# ipcs -s -l ------ Semaphore Limits -------- max number of arrays = 128 max semaphores per array = 250 max semaphores system wide = 32000 max ops per semop call = 32 semaphore max value = 32767 [[email protected] ~]# sysctl kernel.sem kernel.sem = 250 32000 32 128 [[email protected] ~]# sysctl kernel.sem="250 256000 32 1024" [[email protected] ~]# sysctl kernel.sem kernel.sem = 250 256000 32 1024
而其中kernel.sem参数的四个值分别表示:Parameters meaning:SEMMSL – semaphores per IDSEMMNS – (SEMMNI*SEMMSL) max semaphores in systemSEMOPM – max operations per semop callSEMMNI – max semaphore identifiers关于msgmni解释如下:The parameter “msgmni” is the number of message queue ids available to the system. Each message queue requires one id. msgget() gives the error ENOSPC if all the ids have been used up.而ipcs和ipcrm的用途如下:ipcs – report XSI interprocess communication facilities statusipcrm – remove an XSI message queue, semaphore set, or shared memory segment identifier
原文出处:https://blog.csdn.net/caianye/article/details/38534461
原文地址:https://www.cnblogs.com/sucretan2010/p/10874750.html
时间: 2024-10-07 15:11:56