Não consigo aumentar o nofile
limite para usuários não raiz no Ubuntu 14.04, apesar de seguir todas as respostas do StackExchange relacionadas a esse problema. Até agora eu tenho:
$ cat /etc/security/limits.d/custom.conf
@www-data hard nofile 50000
@www-data soft nofile 50000
# even tried specifying the username directly:
myuser hard nofile 50000
myuser soft nofile 50000
$ grep 'limits' /etc/pam.d/common-session*
/etc/pam.d/common-session:session required pam_limits.so
/etc/pam.d/common-session-noninteractive:session required pam_limits.so
$ cat /proc/sys/fs/file-max
101232
Reinicializado, logado e:
$ ulimit -n 4097
-bash: ulimit: open files: cannot modify limit: Operation not permitted
Há ainda alguma forma parece ser um limite de 4096 max para usuários não-root.
Respostas:
Usando o Ubuntu 14.04, obtive o limite descrito:
Eu poderia baixá-lo usando ulimit, mas não aumentá-lo, assim como a pergunta descreve. Como o manual do ulimit descreve:
Então, eu tentei definir um limite mais alto
/etc/security/limits.conf
assim:e um novo login como
ssh localhost -l user
me deu o novo limite:Espero que isto funcione para você também.
fonte
/etc/security/limits*
não é lido pelo seu mecanismo de login - por um motivo ainda desconhecido. 2. Seu limite fixo é definido para 4096 em outro local e "somente a raiz pode aumentar ...". Você pode verificar seus perfis como.bashrc
(dependendo do seu shell) ou/etc
outros locais onde limites podem ser definidos, comofind /etc | grep -e ulimit -e 4096 -e nofile
. BTW: você tentou ssh? E: você mudou/etc/ssh/sshd.conf
para evitar o PAM por algum motivo?/etc/security/limits*
- você pode tentar habilitar o PAM apenas para verificar isso. Vou tentar desabilitar o PAM para ver qual a diferença que faz e relatarei os resultados. --- Sim! é isso aí! Com o PAM desativado, meu limite também é 4096, embora seja definido como 9999 pol/etc/security/limits.conf
.este Acho que artigo trata do seu problema.
Basicamente, você deve usar o comando ulimit para aumentar os recursos disponíveis.
Por exemplo:
Use o seguinte comando para exibir o número máximo de descritores de arquivos abertos:
Para ver os valores físicos e físicos, emita o comando da seguinte maneira:
Para ver os valores físicos e físicos do usuário httpd ou oracle, emita o comando da seguinte maneira:
Para corrigir o número máximo de arquivos, você pode aumentar o número máximo de arquivos abertos, definindo um novo valor na variável do kernel / proc / sys / fs / file-max da seguinte maneira (faça o login como raiz):
O comando acima força o limite para 100000 arquivos. Você precisa editar o
/etc/sysctl.conf
arquivo e colocar a seguinte linha para que, após a reinicialização, a configuração permaneça como está. Para fazer isso, acrescente uma diretiva de configuração da seguinte maneira:Salve e feche o arquivo. Os usuários precisam fazer logoff e logon novamente para que as alterações tenham efeito ou apenas digite o seguinte comando:
Verifique suas configurações com o comando:
ou:
O procedimento acima define os limites de descritores de arquivos (FD) para todo o sistema. No entanto, você pode limitar
httpd
(ou qualquer outro usuário) o usuário a limites específicos editando o/etc/security/limits.conf
arquivo editando/etc/security/limits.conf
e configurando os limites da seguinte forma:Em seguida, verifique-os:
Se você tiver o problema em outras distribuições Linux, verifique
/etc/pam.d/login
e verifique se estápam_limits.so
habilitado, por exemplofonte
Se for um serviço, você pode tentar definir o limite em
/etc/systemd/system/{ServiceName}.service
addLimitNOFILE=65536
fonte