Todos os produtos
Search
Central de documentação

:O que fazer se a mensagem de erro "could not set limit for 'nofile': Operation not permitted" aparecer ao conectar a uma instância Linux do ECS por SSH?

Última atualização: Jun 23, 2026

Este tópico descreve a causa e a solução para o problema em que a mensagem de erro "could not set limit for 'nofile': Operation not permitted" aparece ao conectar a uma instância Linux do Elastic Compute Service (ECS) por SSH.

Descrição do problema

Ao conectar a uma instância Linux do ECS por SSH, a seguinte mensagem de erro aparece:

-bash: fork: retry: Resource temporarily unavailable.
pam_limits(sshd:session): could not sent limit for 'nofile':operation not permitted.
Permission denied.

Causa

O valor de nofile no arquivo de configuração de limites de recursos /etc/security/limits.conf do kernel Linux é muito grande e excede o número máximo de arquivos que o kernel pode abrir. Por isso, não é possível conectar à instância Linux do ECS por SSH.

Solução

Modifique o arquivo de configuração /etc/sysctl.conf ou /etc/security/limits.conf de acordo com seus requisitos de negócio para resolver esse problema.

  1. Conecte-se à instância Linux do ECS por Virtual Network Computing (VNC).

    Para mais informações, consulte Métodos de conexão remota para instâncias do ECS.

  2. Execute os seguintes comandos para visualizar os valores dos parâmetros fs.file-max e fs.nr_open.

    • Se os valores dos parâmetros fs.file-max e fs.nr_open forem menores ou iguais a 65.536, prossiga para o Passo 3.

    • Se os valores dos parâmetros fs.file-max e fs.nr_open forem maiores que 65.536, prossiga para o Passo 4.

      cat /proc/sys/fs/file-max 
      cat /proc/sys/fs/nr_open 
  3. Modifique o arquivo de configuração /etc/sysctl.conf.

    1. Abra o arquivo de configuração /etc/sysctl.conf.

      vim /etc/sysctl.conf
    2. Pressione a tecla I para entrar no modo de inserção.

    3. Altere os valores dos parâmetros fs.file-max e fs.nr_open.

      Recomenda-se alterar os valores dos parâmetros fs.file-max e fs.nr_open para um valor maior que 65.536.

        null
        • fs.file-max: o número de arquivos que todos os processos do kernel podem abrir.

        • fs.nr_open: o número de arquivos que um único processo do kernel pode abrir.

      fs.file-max = 655360
      fs.nr_open = 655360
  4. Modifique o arquivo de configuração /etc/security/limits.conf.

    1. Abra o arquivo de configuração /etc/security/limits.conf.

      vim /etc/security/limits.conf
    2. Pressione a tecla I para entrar no modo de inserção.

    3. Altere os valores dos parâmetros * soft nofile e * hard nofile.

      Por exemplo, altere os valores dos parâmetros * soft nofile e * hard nofile para valores maiores que 65.535.

      * soft nofile 655350
      * hard nofile 655350
  5. Reinicie a instância do ECS.

    Para mais informações, consulte Iniciar uma instância.

  6. Execute os seguintes comandos em sequência para verificar se os valores dos parâmetros fs.file-max e fs.nr_open foram alterados:

    cat /proc/sys/fs/file-max
    cat /proc/sys/fs/nr_open

Referência

Solucionar falhas de conexão com uma instância Linux