Bloqueado fora do host depois de atingir algum ulimit

5

Portanto, eu tenho uma conta sudoer em um host remoto, no qual eu crio um processo com milhares de threads e sockets. A questão é, se eu criar muitos threads / sockets (não tenho certeza qual deles, pode até ser algum outro limite), eu fico bloqueado do host: minha conexão ssh é perdida e, se eu tentar ssh de volta, Recebo uma mensagem de erro Write failed: Broken pipe .

Como posso voltar ao sistema, além de perguntar a outro usuário para sudo killall -9 -u myusername nessa máquina? O host é normalmente acessível a outros usuários.

    
por Eduardo Bezerra 13.07.2012 / 21:13

1 resposta

1

No momento em que seu limite é atingido, você não pode fazer nada, exceto a solução que você forneceu (peça a outro usuário para matar seus processos).

Para evitar isso no futuro, você precisará descobrir qual limite é realmente alcançado e, em seguida, o limite para o seu processo um pouco menor que o máximo (usando ulimit). Você também pode considerar o uso de cgroups (grupos de controle do Linux) para isolar seu processo de forma que ele não consuma todos os recursos.

    
por 13.09.2012 / 09:24