apt-get quer autorarove pacotes principais

2

Eu atualizei para o PHP 5.6RC4 hoje no meu servidor Debian Sid (x64):

The following packages have been kept back:
  perl perl-base perl-modules
The following packages will be upgraded:
  cpp-4.9 g++-4.9 gcc-4.9 gcc-4.9-base libasan1 libatomic1 libcilkrts5 libgcc-4.9-dev libgcc1 libgomp1 libitm1 liblsan0 libquadmath0 libstdc++-4.9-dev libstdc++6 libtsan0 libubsan0 php-pear php5 php5-cli
  php5-common php5-curl php5-fpm php5-gd php5-mcrypt php5-mysql php5-readline python-pil
28 upgraded, 0 newly installed, 0 to remove and 3 not upgraded.
Need to get 41.0 MB of archives.
After this operation, 762 kB disk space will be freed.
Do you want to continue? [Y/n]

Agora, quando eu faço apt-get dist-upgrade ou apt-get autoremove , recebo o seguinte:

The following packages will be REMOVED:
  console-setup console-setup-linux debconf-i18n dictionaries-common iamerican ibritish ienglish-common ispell keyboard-configuration libalgorithm-diff-xs-perl libdbd-mysql-perl libdbi-perl
  libfile-fcntllock-perl libhtml-form-perl libhtml-format-perl libhtml-parser-perl libhtml-tree-perl libio-socket-ssl-perl liblocale-gettext-perl liblwp-protocol-https-perl libmailtools-perl
  libnet-smtp-ssl-perl libnet-ssleay-perl libtext-charwidth-perl libtext-iconv-perl libtext-soundex-perl libtext-wrapi18n-perl libuuid-perl libwww-perl libxml-libxml-perl libxml-parser-perl
  libxml-sax-expat-perl linux-base linux-image-3.14-1-amd64 linux-image-amd64 mariadb-client-10.0 mariadb-server mariadb-server-10.0 task-english tasksel tasksel-data texinfo
The following NEW packages will be installed:
  libcgi-pm-perl libmodule-build-perl libmodule-signature-perl libpackage-constants-perl libpod-readme-perl libregexp-common-perl
The following packages will be upgraded:
  perl perl-base perl-modules
3 upgraded, 6 newly installed, 42 to remove and 0 not upgraded.
Need to get 7,102 kB of archives.
After this operation, 262 MB disk space will be freed.
Do you want to continue? [Y/n]

Parece que quer remover muitos pacotes relacionados a Perl (talvez porque Perl ainda não tenha sido atualizado), mas também mariadb-server (que instalei sozinho, não é uma dependência), linux-image-3.14-1-amd64 (que é meu kernel atual e foi fixado em apt ), tasksel etc.

Eu encontrei esta pergunta sobre o MariaDB, mas essa biblioteca não foi tocada até onde eu sei.

Remover o kernel do Linux não parece ser uma boa ideia para mim. Também preciso do servidor MariaDB.

Alguém sabe por que isso está acontecendo de repente? e como consertar isso? Existe algum comando para verificar todas as dependências novamente ou bloquear todos os pacotes atuais? Eu não quero colocar todos esses pacotes manualmente (o que nem parece funcionar em relação ao kernel).

    
por Louis Matthijssen 15.08.2014 / 09:39

1 resposta

2

TL; DR: parece haver alguns problemas de dependência com libuuid-perl e perl-base .

Editar 2014-08-18, parece que os deps / repos foram corrigidos; "funciona para mim".

Solução de problemas, começando com o problema do kernel:

sudo apt-get install linux-image-amd6

The following packages have unmet dependencies: linux-image-amd64 : Depends: linux-image-3.14-2-amd64 but it is not going to be installed

sudo apt-get install linux-image-amd64 "linux-image-3.14-2-amd64"

The following packages have unmet dependencies: linux-image-3.14-2-amd64 : Depends: linux-base (>= 3~) but it is not going to be installed

sudo apt-get install linux-image-amd64 "linux-image-3.14-2-amd64" linux-base

The following packages have unmet dependencies: linux-base : Depends: libuuid-perl but it is not going to be installed

Hmm, correndo em Perl aqui.

sudo apt-get install linux-image-amd64 "linux-image-3.14-2-amd64" linux-base libuuid-perl

The following packages have unmet dependencies: libuuid-perl : Depends: perlapi-5.18.1 but it is not installable

Aha! libuuid-perl parece exigir perlapi-5.18.1 .

sudo apt-get install linux-image-amd64 "linux-image-3.14-2-amd64" linux-base libuuid-perl perl-base perlapi-5.18.1

Package perlapi-5.18.1 is not available, but is referred to by another package.

E: Package 'perlapi-5.18.1' has no installation candidate

Hmm. Não há perlapi-5.18.1 disponível. Vamos ver o que o perl-base fornece:

apt-cache show perl-base

Package: perl-base Source: perl Version: 5.20.0-4 Essential: yes Installed-Size: 5007 Maintainer: Niko Tyni Architecture: amd64 Replaces: libio-socket-ip-perl, libperl5.8 (<< 5.8.0-20), libscalar-list-utils-perl, libsocket-perl, libxsloader-perl, perl (<< 5.10.1-12), perl-modules (<< 5.10.1-1) Provides: libio-socket-ip-perl, libscalar-list-utils-perl, libsocket-perl, libxsloader-perl, perl5-base, perlapi-5.20.0 Pre-Depends: libc6 (>= 2.14), dpkg (>= 1.14.20) Suggests: perl Conflicts: defoma (<< 0.11.12), doc-base (<< 0.10.3), mono-gac (<< 2.10.8.1-3), safe-rm (<< 0.8), update-inetd (<< 4.41) Breaks: autoconf2.13 (<< 2.13-45), libalien-wxwidgets-perl (<< 0.65+dfsg-2), libanyevent-perl (<< 7.070-2), libcommon-sense-perl (<< 3.72-2~), libfile-spec-perl (<< 3.4700), libgtk2-perl-doc (<< 2:1.2491-4), libio-socket-ip-perl (<< 0.29), libjcode-perl (<< 2.13-3), libmarc-charset-perl (<< 1.2), libscalar-list-utils-perl (<< 1:1.38), libsocket-perl (<< 2.> 013), libxsloader-perl (<< 0.17)

Fornece perlapi-5.20.0 . O que o libuuid-perl realmente requer?

apt-cache show libuuid-perl

Package: libuuid-perl Version: 0.05-1 Depends: perl-base (>= 5.18.1-2), perlapi-5.18.1, libc6 (>= 2.4), libuuid1 (>= 2.16) Conflicts: doc-base (<< 0.10.3)

Ele parece exigir não apenas perl-base da versão 5.18.1-2 acima, mas explicitamente depende de perlapi-5.18.1 , que não é fornecido.

Além disso:

sudo apt-get install libperl5.18

The following packages have unmet dependencies: libperl5.18 : Depends: perl-base (= 5.18.2-7) but 5.20.0-4 is to be installed

sudo apt-get install libperl5.18 perl-base=5.18.2-7

Reading package lists... Done Building dependency tree
Reading state information... Done E: Version '5.18.2-7' for 'perl-base' was not found

    
por 15.08.2014 / 11:29