Estou usando o Ubuntu 14.04. Recentemente, quando eu faço login via SSH com meu usuário com privilégios sudo, todos os comandos que eu executo resultam no erro "Não é possível alocar memória". Aqui estão alguns que eu tentei no meu console
myuser@mymachine:~$ whoami
-bash: fork: Cannot allocate memory
myuser@mymachine:~$ uname -a
-bash: fork: Cannot allocate memory
Mesmo que eu tente sudo reboot now
, recebo o erro acima, então não sei mais o que posso tentar desbloquear minha instância. O host é o DigitalOcean, se isso importa.
Edit: Pela resposta / sugestão dada aqui é a saída de "grátis"
myuser@mymachine:~$ free
-bash: fork: Cannot allocate memory
sudo sysctl -w vm.oom_kill_allocating_task=1
ou permanentemente/etc/sysctl.conf
?sudo reboot
antes de executar isso. Obrigado!Para concluir a resposta aceita, há uma coisa a considerar: Seu sistema pode ficar sem identificadores de arquivo ou até buffers de soquete e ainda ter muita memória enquanto fornece o mesmo erro. Isto é especialmente verdade se a hospedagem compartilhada impuser limites dessa natureza. Nos sistemas OpenVZ, assista ao conteúdo de
Isso fornecerá na primeira coluna as primeiras ultrapassagens. Se isso for verdade, mude para um pacote de hospedagem maior ou procure o culpado mais provável: o banco de dados mysql ou mariadb que pode, na presença de um aplicativo PHP com defeito, vazar identificadores de arquivo para centenas por segundo.
Isso também pode acontecer se o servidor da web estiver aberto na Internet e aceitar logins de nome de usuário / senha: mesmo se você tiver o fail2ban em execução, poderá ter atraído uma quebra de dicionário distribuída na tentativa, que também consome muitos recursos.
fonte