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.