Posso descobrir qual script gera qual erro?

2

Existe um script que chama outros scripts e eles chamam outros ... Eu não sei exatamente quais scripts são chamados e quantos deles. Eu só sei que alguns deles estão adicionando regras iptables e eu recebo este erro quando eu chamo script raiz.

iptables: No chain/target/match by that name.
iptables: No chain/target/match by that name.

Meu problema é que não consigo encontrar qual script gera esses erros. Existe alguma maneira ou ferramenta para aprender isso?

    
por ibrahim 04.09.2012 / 11:31

2 respostas

6

Você pode rastrear a execução de uma série de scripts usando bash -x

bash -x /path/to/your/script

A partir disso, você pode descobrir quais scripts estão sendo chamados. Você pode forçar o script a abortar antecipadamente usando o -e switch

bash -e -x /path/to/your/script

que pode evitar que você tenha que percorrer muitos resultados

    
por 04.09.2012 / 11:57
1

Você pode simplesmente redirecionar o stdout e o sterr do script executado para um arquivo. Cada saída de script pode ser direcionada para um arquivo separado. Nesse caso, você pode verificar esses arquivos e verificar qual script retornou um erro.

Para redirecionar a saída, você pode usar:

/path/to/script > /path/to/logfile.log

Para redirecionar stdout e stderr, você pode usar:

/path/to/script > /path/to/logfile.log 2>&1

Você pode substituir > por >> para acrescentar ao arquivo em vez de truncá-lo a cada vez.

    
por 04.09.2012 / 11:40