Execute o script antes que outras unidades parem no desligamento

1

Eu preciso executar um script antes de um conjunto de outros serviços na minha máquina parar ao desligar a máquina. (No meu caso, encerrar uma instância do EC2.)

Eu tentei variações na resposta nesta pergunta, mas nada funciona: Como faço para executar um script antes de tudo no desligamento com o systemd? (Eu também olhei no unix.se, mas também não é bom: link ... e eu também procurei nas listas de discussão. )

Meu maior problema é que o OP dessa pergunta queria executar o script antes que algumas montagens fossem desmontadas, mas eu não tenho nenhum requisito em montagens, mas em serviços.

Meu serviço é algo assim:

[Unit]
Description=Run script before other things stop on shutdown
Wants=multi-user.target network.target foo.service bar.service
After=multi-user.target network.target foo.service bar.service

[Service]
ExecStart=/bin/true
ExecStop=-/my/script
ExecStopPost=/bin/sleep 5s
RemainAfterExit=yes
Type=oneshot

[Install]
WantedBy=multi-user.target

Eu habilito e inicio esta unidade após a inicialização, mas não parece executar o script quando encerro a instância. Estou perplexo, como posso fazer isso?

Estou usando o systemd 232 no Debian Stretch.

    
por 2rs2ts 21.09.2018 / 03:43

0 respostas