Aguardando que um serviço daemontools pare

2

Estou executando um serviço sob daemontools que demora vários segundos para ser interrompido quando é enviado o sinal TERM. Eu preciso pará-lo em um script e, em seguida, aguarde o processo parar antes de continuar a fazer um instantâneo LVM ou reiniciar o serviço.

Os daemontools fornecem uma maneira de fazer isso? Se não, qual é o melhor caminho? Eu estava pensando em dormir enquanto svcok sai com 0, mas parece que isso deve ser um problema comum com uma solução mais fácil. Pensamentos?

    
por also 02.01.2011 / 22:57

1 resposta

1

Uma maneira de fazer isso que eu já usei é pegar o problema de maneira diferente, no seu script de execução você pode fazer o que quiser antes de executar o seu aplicativo para que você possa fazer isso:

#!/bin/sh

# backup anything you want
rsync xxxx

exec /path/to/app

e depois:

svc -du /path/to/service

parava o aplicativo e, quando parado, pegava seu backup e depois o reiniciava.

Embora não seja completamente o que você pediu, ele atende ao mesmo objetivo e funciona bem:)

    
por 11.03.2011 / 11:55