Meu script de kickstart é assim:
%pre --log=/tmp/log
wget --no-check-certificate http://192.168.2.33/file
[ $? -eq 0 -a -f file ] && tar --ignore-failed-read -xzvf file
....
%end
O comando wget falha porque o arquivo não está disponível no servidor. Agora, quero que o script pare de executar a instalação e falhe imediatamente quando vir algum erro com a mensagem de erro correspondente aparecendo na tela do terminal
Eu deparei com essa opção --erroronfail
, mas ela mostra apenas as chamadas de traceback de exceção do Python no console sem a string de erro real para mostrar ao usuário por que ela falhou.
Eu tentei as seguintes maneiras:
%pre --interpreter /bin/sh --log=/tmp/log --erroronfail
exec < /dev/tty3 > /dev/tty3
chvt 3
wget --no-check-certificate http://192.168.2.33/file
[ $? -eq 0 -a -f file ] && tar --ignore-failed-read -xzvf file
chvt 1
%end
e como abaixo também
%pre --interpreter /bin/sh --log=/tmp/log --erroronfail
exec < /dev/tty3 > /dev/tty3
chvt 3
wget --no-check-certificate http://192.168.2.33/file 2>&1 | /usr/bin/tee -a /tmp/log
chvt 1
%end
Nada me dá o resultado esperado