可能是你的semaphore max value超过限制
sysctl -w kernel.sem="..."

解决方案 »

  1.   


    [root@localhost ~]# sysctl -e kernel.sem
    kernel.sem = 250        32000   100     128
    [root@localhost ~]#这个是安装前设置的,安装后都有正常启动过Apache,这个设置具体会与那些地方有关系啊?
      

  2.   

    你正常也启动过,那和核心参数关系就不大了.
    redhat有自带的Apache,用那个怎么样.
      

  3.   

    This error can occur because the default RedHat limits for semaphores are not enough for the number ... 
      

  4.   

    好老的贴,这个一般和机器本身设置有关系,看看下面对你有用不.
    1. Back up the init file (httpd).
    cp /etc/init.d/httpd /etc/init.d/httpd.backup2. Use "pico /etc/init.d/httpd" and paste this after "#!/bin/bash":
    CLEAN=`ipcs -s | grep -iw apache | awk '{print$2}'` >> /dev/null 2>&1
    3. Now use "ctrl + w" to search for "restart", then chage this:
    restart)
    stop
    start
    ;;
    to this:
    restart)
    stop
    ipcrm sem $CLEAN >> /dev/null 2>&1
    rm -f /tmp/session_mm_*.sem
    rm -f /tmp/sess_*
    rm -f /tmp/_*.wrk
    start
    ;;
    (Be carefull with the TABS)4. Use "Ctrl+x" to exit and "y" to save changes.5. "service httpd restart" and you are done.6. to make sure run this:
    /usr/bin/ipcs -s | grep apache
    if only ONE line like this apears:root@plesk root]# /usr/bin/ipcs -s | grep apache
    0x00000000 3702784 apache 600 1
    [root@plesk root]#
    its good.if not, restore the backup and restart apache again, maybe you did something wrong or this isnt the solution for your problem.you can always restore your httpd script using "cp /etc/init.d/httpd.backup /etc/init.d/httpd" same problem
    I encountered the same "Ouch!" problem and solved it quickly and easily with this thread. I increased the semaphore file size, and followed rfxn's deletion advice.I encountered the same "Ouch!" problem and solved it quickly and easily with this thread. I increased the semaphore file size.