2012-09-07 2 views
1

이 명령을 통해 열려있는 파일의 수를 표시하려고했습니다 :이유는 너무 많은 파일을 열 아파치?

lsof | awk '{print $ 1 ""$ 2}'| 유니크 -c |

717 mysqld 1762 
    188 httpd 5171 
    185 httpd 5145 
    184 httpd 5631 
    184 httpd 5488 
    184 httpd 5150 
    184 httpd 3824 
    184 httpd 3819 
    184 httpd 3811 
    184 httpd 3483 
    184 httpd 3255 
    184 httpd 3249 
    184 httpd 3236 
    184 httpd 3230 
    183 httpd 5655 
    183 httpd 5490 
    183 httpd 5489 
    183 httpd 5487 
    183 httpd 5465 
    183 httpd 5464 
    183 httpd 5149 
    183 httpd 4480 
    183 httpd 4479 
    183 httpd 4478 
    183 httpd 4477 
    183 httpd 4474 
    183 httpd 4473 
    183 httpd 4459 
    183 httpd 3490 
    183 httpd 3489 
    183 httpd 3488 
    183 httpd 3487 
    183 httpd 3484 
    183 httpd 3478 
    183 httpd 3326 
    183 httpd 3235 
    183 httpd 3234 
    183 httpd 3233 
    183 httpd 3231 
    183 httpd 3229 
    183 httpd 10551 
    183 httpd 10317 
    183 httpd 10316 
    183 httpd 10291 
    182 httpd 10602 
    182 httpd 10601 
    182 httpd 10281 
    174 httpd 5443 
    174 httpd 3319 
    174 httpd 10603 
    174 httpd 10596 
    174 httpd 10578 
    174 httpd 10577 
    174 httpd 10552 
    174 httpd 10531 
    173 httpd 10576 
    173 httpd 10378 
    173 httpd 10319 
    173 httpd 10318 
    171 httpd 3226 
    137 master 1985 
    118 dovecot 1854 
    74 newrelic- 1880 
    63 sshd 8631 
    62 auth 11282 
    57 fail2ban- 2107 
    56 auth 11283 
    49 qmgr 2007 
    49 pickup 31235 
    44 squid 2061 
    44 memcached 1002 
    41 sshd 1183 
    37 squid 2059 
    34 log 1857 
    27 vsftpd 1206 
    27 imap 7971 
    24 anvil 1855 
    22 config 11280 
    20 rsyslogd 869 
    20 init 1 
    19 udevd 363 
    19 crond 2042 
    15 unlinkd 2063 
    15 udevd 911 
    15 udevd 910 
    15 mysqld_sa 1246 
    15 lsof 11502 
    15 bash 8687 
    13 acpid 895 
    12 sort 11505 
    12 awk 11503 
    10 newrelic- 1879 
    10 lsof 11506 
    10 irqbalanc 884 
     9 uniq 11504 
     8 mingetty 2155 
     3 xenwatch 23 
     3 xenbus 24 
     3 sync_supe 56 
     3 netns 19 
     3 migration 9 
     3 migration 7 
     3 migration 5 
     3 migration 4 
     3 kthreadd 2 
     3 kswapd0 117 
     3 kstriped 292 
     3 ksoftirqd 8 
     3 ksoftirqd 6 
     3 ksoftirqd 3 
     3 ksoftirqd 10 
     3 ksnapd 296 
     3 kseriod 68 
     3 kjournald 318 
     3 khvcd 136 
     3 khelper 16 
     3 kblockd/3 63 
     3 kblockd/2 62 
     3 kblockd/1 61 
     3 kblockd/0 60 
     3 kauditd 570 
     3 flush-202 725 
     3 events/3 14 
     3 events/2 13 
     3 events/1 12 
     3 events/0 11 
     3 crypto/3 125 
     3 crypto/2 124 
     3 crypto/1 123 
     3 crypto/0 122 
     3 cpuset 15 
     3 bdi-defau 58 
     3 async/mgr 20 
     3 aio/3 121 
     3 aio/2 120 
     3 aio/1 119 
     3 aio/0 118 
     1 COMMAND PID 

밥상, 당신은 왜 아파치가 너무 많은 파일을 열 말씀 해주십시오 수 : 일종의 -n 여기

및 -r은 결과? httpd.conf에서 access_log 지시문을 비활성화했지만 도움이되지 않습니다.

들으

+2

그것은이 작업을 필요한만큼의 파일을 엽니 다. 그 * 진짜 * 문제? – zerkms

답변

2

당신이 실제 결과 (lsof|grep httpd)을 보면, 각 부모 프로세스가로드 된 각 모듈에 대한 열린 핸들이있다, 그래서 당신의 모듈 (예 : mod_rewrite는) 열린 파일에있을 것입니다 것을 볼 수 있습니다 명부.

각 프로세스에는 error_log 파일에 대한 핸들, httpd 또는 모든 모듈을 실행하는 데 필요한 lib 파일, IPC 용 프로세스 당 하나 이상의 파이프가 있습니다. 당신이 정적 파일을 많이 제공하고 당신이 바쁜 사이트가있는 경우

, 기회는 당신이 그 파일 중 일부도 열어 볼 수 있습니다.

정말이 중 어느 것도 문제가 많이 없어야합니다. 그리고, 마음에 실행 한 더 많은 서버 프로세스를 유지, 더 열려있는 파일이 각 상위 프로세스가 동일한 파일을 많이 열 때문에 수 (특히 모듈 및 로그 파일)합니다.

관련 문제