Ajuda com a linha “Required-Stop:” no cabeçalho LSB do script init do tipo System-V

0

Eu escrevi um daemon que procura por arquivos em um determinado diretório e, se um novo arquivo é copiado para este diretório, ele está comprometido com o SVN. Novos arquivos aparecerão nesse diretório apenas se os dispositivos remotos copiarem arquivos por cima de scp . Agora eu gostaria de criar um script de init do System-V para este daemon no OpenSUSE 11.4. É claro que Required-Start: line deve conter apenas o recurso $sshd boot, pois isso garante que o sistema de arquivos local seja montado, a rede esteja operacional e sshd seja iniciado. Esses três recursos de inicialização são pré-requisitos para o daemon, ou seja, não há nenhum ponto para iniciar o daemon se sshd não estiver operacional e, portanto, é impossível que ele receba novos arquivos acima de scp . No entanto, estou intrigado como devo configurar a linha Required-Stop: , que lista todos os recursos de inicialização que devem NÃO ser interrompidos antes de desligar o daemon. Parece-me lógico ter sistemas de arquivos locais montados e operando em rede (para fazer upload dos arquivos para o SVN) enquanto sshd está parado (para não receber novos arquivos) antes que o daemon seja interrompido. Required-Stop: $sshd poderia criar uma situação em que o daemon é interrompido enquanto um novo arquivo é recebido sobre scp antes que o sshd seja interrompido.

Então, em poucas palavras, a abordagem a seguir parece ser a mais lógica para mim:

# Required-Start: $sshd
# Required-Stop: $local_fs $network

Estou correto?

    
por Martin 04.11.2015 / 15:43

1 resposta

2

De acordo com o link na seção sobre Required-Stop

Normally you would include here the same facilities as for the Required-Start keyword.

Ter este script em execução antes de ssh iniciar não é um problema como o sugerido no OP, significa apenas que o daemon estará esperando por arquivos que nunca aparecerão até que ssh inicie. Esse script, no entanto, definitivamente precisa da funcionalidade de $local_fs e $network , então eu usaria as duas linhas a seguir

# Required-Start: $local_fs $network
# Required-Stop: $local_fs $network
    
por 11.11.2015 / 21:50