Isso pode ser acionado em uma configuração do sistema projetada para inicializar um sistema, executar uma única tarefa e, em seguida, desligar. O serviço systemd que também contém a tarefa OnFailure=
com falha também pode conter:
ExecStopPost=/usr/bin/sudo /sbin/poweroff
Existe um deadlock em que, para terminar de desligar a unidade, os comandos poweroff precisam ser executados. Mas para o comando poweroff terminar a execução, ele precisa parar a unidade.
Enquanto isso, a tarefa OnFailure=
está sendo executada enquanto esse deadlock está ocorrendo.
Por fim, parece que a ação poweroff
logo "vence" o deadlock, impedindo também que a tarefa OnFailure=
seja executada.
Uma solução alternativa na AWS é definir um alarme do CloudWatch na instância. O alarme terá a opção de "Executar ação: desligamento" se a CPU máxima na instância for inferior a 1% da CPU por 15 minutos.