sudo: ulimit: comando não encontrado [duplicado]

19

No Ubuntu 12.04, eu corri ulimit -n , ele está mostrando 1024. Eu quero aumentar meu limite de arquivo aberto de 1024 para 65535, então eu tentei o seguinte comando:

sudo ulimit -n 65535

mas recebo o seguinte erro:

sudo: ulimit: command not found

Como eu aumento o limite de arquivo de 1024 para 65535?

    
por sunpy 05.07.2013 / 09:55

1 resposta

22

Os limites são específicos do processo. ulimit é um shell bult-in e só pode alterar limites para este shell e os processos iniciados a partir deste shell. sudo ulimit não faz sentido. Mesmo que não falhe, isso só influenciaria os processos iniciados por sudo ao mesmo tempo, e não há nenhum.

Para aumentar seu limite acima do limite máximo, você precisa aumentar o limite global para todos usuários ou definir um limite diferente para específico usuário. Esses limites são definidos em /etc/security/limits.conf (ou /etc/security/limits.d/ ). Edite este arquivo e crie uma nova entrada para seu usuário:

sunpy             hard    nofile           65535

Salve o arquivo e abra uma nova sessão. Depois de chamar ulimit -Hn dentro da nova sessão, deverá mostrar o novo limite hard para o número de arquivos abertos. Para usar o limite hard , você precisa aumentar seu limite soft atual para o limite hard chamando ulimit -n 65535 .

É claro que você também pode alterar o seu limite soft permanentemente, especificando soft em vez de hard no seu /etc/security/limits.conf . Então você não precisa aumentar seu limite flexível manualmente, mas o novo limite será aplicado para cada uma de suas sessões.

Ah, e de acordo com essa resposta , parece que você precisa editar /etc/pam.d/common-session* e adicionar:

session required pam_limits.so

se ainda não estiver pronto. Caso contrário, esses limites não serão aplicados às suas sessões.

    
por 05.07.2013 / 10:37

Tags