Estamos criando scripts de configuração de servidor que assumem um servidor básico (instância do Amazon AWS), faz algumas perguntas e, em seguida, instala pacotes e arquivos de configuração variados.
O problema é que executar apt-get -q --assume-yes package1 package2
entra em segundo plano imediatamente. Como não foi concluído, a próxima linha do processo falha, já que espera que o package1 esteja lá.
Então a questão é como ter as duas coisas? apt
aceitando --assume-yes
, não fazendo perguntas, mas sem se basear ao mesmo tempo.
Adendo:
A parte relevante é:
dpkg-reconfigure locales
apt-get update
apt-get -q --assume-yes upgrade
apt-get -qq --assume-yes install apache2
apachectl stop
which apache2
Pode-se esperar que o apache seja instalado e iniciado pelo apt, depois parado e, em seguida, o caminho será gerado.
O que realmente acontece é que o apache é instalado, NÃO está parado, e as últimas duas linhas são gravadas para serem exibidas como estão, em vez de serem executadas.