Como o lsof pode relatar um número maior de arquivos abertos do que o que o ulimit diz ser permitido?

5

Como o lsof pode reportar mais arquivos abertos do que o que o ulimit diz ser o limite?

prod_web3(i-ca0b05aa):~$ sudo lsof | wc -l
4399
prod_web3(i-ca0b05aa):~$ ulimit -n
1024
    
por Adam Nelson 26.10.2011 / 18:32

3 respostas

6

Da página de manual do ulimit builtins

The ulimit builtin provides control over the resources available to the shell 
and to processes started by it on systems that allow such control.

Seu comando lsof lista todos os arquivos abertos para todos os processos de todos os usuários no sistema. Você não está comparando com gosto.

    
por 26.10.2011 / 19:09
2

Um bash (1) embutido, ulimit define o número máximo de arquivos abertos por processo.

Esta não é uma configuração de todo o sistema.

    
por 26.10.2011 / 18:37
1

Embora seja antigo, eu queria fazer a mesma pergunta ... a resposta não é satisfatória no meu caso, pois é isso que acontece:

$ sudo su tomcat -c "ulimit -n"
1024
$ lsof -u tomcat
3967

Não sei bem por que isso aconteceu. Eu acho que arquivos abertos do subprocesso não são contabilizados no pai.

    
por 19.04.2012 / 15:56