Eu estou tentando consertar uma configuração APT em um servidor Ubuntu para o qual eu só tenho acesso SSH e não consigo resolver os erros de dependência.
Eu corri sudo apt-get install -f
e recebo o seguinte:
Reading package lists... Done
Building dependency tree
Reading state information... Done
0 upgraded, 0 newly installed, 0 to remove and 1 not upgraded.
4 not fully installed or removed.
After this operation, 0 B of additional disk space will be used.
Setting up ssl-cert (1.0.23ubuntu2) ...
dpkg: error processing ssl-cert (--configure):
subprocess installed post-installation script returned error exit status 1
dpkg: dependency problems prevent configuration of postgresql-common:
postgresql-common depends on ssl-cert (>= 1.0.11); however:
Package ssl-cert is not configured yet.
dpkg: error processing postgresql-common (--configure):
dependency problems - leaving unconfigured
No apport report written because the error message indicates its a followup error from a previous failure.
dpkg: dependency problems prevent configuration of postgresql-8.4:
postgresql-8.4 depends on postgresql-common (>= 104~); however:
Package postgresql-common is not configured yet.
postgresql-8.4 depends on ssl-cert; however:
Package ssl-cert is not configured yet.
dpkg: error processing postgresql-8.4 (--configure):
dependency problems - leaving unconfigured
No apport report written because MaxReports is reached already
dpkg: dependency problems prevent configuration of postgresql:
postgresql depends on postgresql-8.4; however:
Package postgresql-8.4 is not configured yet.
dpkg: error processing postgresql (--configure):
dependency problems - leaving unconfigured
No apport report written because MaxReports is reached already
Errors were encountered while processing:
ssl-cert
postgresql-common
postgresql-8.4
postgresql
E: Sub-process /usr/bin/dpkg returned an error code (1)
O que exatamente isso significa? Existe uma dependência circular?
Eu tentei instalar a dependência necessária ssl-cert
, mas também não funciona.
Eu não posso usar dpkg
diretamente.
Alguma dica de como resolver isso, ou alguém poderia me ajudar a entender melhor o problema? Existe alguma informação adicional que eu deveria fornecer?
===
EDITAR:
A execução de sudo sh -x /path/to/config.postinst configure
produz a seguinte saída:
+ . /usr/share/debconf/confmodule
+ [ ! ]
+ PERL_DL_NONLAZY=1
+ export PERL_DL_NONLAZY
+ [ ]
+ exec /usr/share/debconf/frontend /var/lib/dpkg/info/ssl-cert.postinst configure
Isso significa que o script não consegue executar a última linha?
A execução de sudo /usr/share/debconf/frontend /var/lib/dpkg/info/ssl-cert.postinst configure
é concluída silenciosamente, mas a porcentagem subseqüente de echo $?
rende 1
, indicando que ocorreu um erro.
Quando adiciono set -x
à parte superior do arquivo e, em seguida, executo o comando sudo ... frontend ... configure
, ele falha em:
make-ssl-cert generate-default-snakeoil
set -x
ing este arquivo também falha em:
openssl req -config /tmp/tmp.wPl6nkzKYm -new -x509 -days 3650 -nodes -out /etc/ssl/certs/ssl-cert-snakeoil.pem -keyout /etc/ssl/private/ssl-cert-snakeoil.key
A execução deste comando com sudo
dá:
Generating a 1024 bit RSA private key
.....................++++++
.......................++++++
writing new private key to '/etc/ssl/private/ssl-cert-snakeoil.key'
-----
problems making Certificate Request
53829:error:0D07A097:asn1 encoding routines:ASN1_mbstring_ncopy:string too long:a_mbstr.c:154:maxsize=64
Eu não estou familiarizado com o OpenSSL; o que está acontecendo aqui?
(Além disso, devo fazer um fork para uma nova pergunta? O escopo desta pergunta foi excedido?)