Script do Bash abortando depois de definir as funções do lsb

1

Atualmente, estou tentando fazer com que um script funcione, o que precisa definir algumas funções LSB. Isso está acontecendo aqui:

echo "step 1"

# Read configuration variable file if it is present
[ -r /etc/default/$NAME ] && . /etc/default/$NAME

# Load the VERBOSE setting and other rcS variables
[ -f /etc/default/rcS ] && . /etc/default/rcS

echo "step 2"

# Define LSB log_* functions.
# Depend on lsb-base (>= 3.0-6) to ensure that this file is present
# and status_of_proc is working.
. /lib/lsb/init-functions

echo "step 3"

Mas o script anula a execução após o passo 2, nunca obtenho a saída "etapa 3". Este script é o script de início para o deluged. Costumava funcionar, mas percebi que meu dilúvio não funcionava mais e acompanhei o problema até essa linha de código.

Alguém sabe o que pode causar isso? O arquivo init-functions existe no diretório especificado.

    
por Chester 12.02.2017 / 18:10

2 respostas

0

Você pode ver um aborto durante o fornecimento de um script de shell se algo nesse script de shell usar um exec ou uma saída em vez de um retorno ou apenas atingir o final do arquivo.

A partir do layout do sistema de arquivos, estou supondo que você esteja em uma derivada RedHat, e tanto no CentOS 6 quanto no CentOS 7 o arquivo / lib / lsb / init-functions é muito pequeno e contém muito pouco por padrão, Não espere que o resultado seja possível, a menos que tenha sido modificado. Sua próxima etapa de depuração é provavelmente examinar o arquivo para qualquer outra coisa que ele possa estar obtendo, e inserir mais mensagens de depuração para descobrir exatamente em qual linha ele está sendo abortado.

    
por 12.02.2017 / 19:34
0

Encontrei onde estava o problema: o arquivo tinha permissões incorretas, não permitindo que o script lesse o arquivo.

    
por 12.02.2017 / 20:31