dpkg erro após atualização massiva no Ubuntu

0

Estou atualizando uma máquina que foi um pouco abandonada antes e precisava de uma atualização massiva de seus pacotes. A máquina é um Ubuntu e, após uma atualização / atualização do apt, recebo o seguinte erro:

carpette@carpette:~$ sudo apt clean
carpette@carpette:~$ sudo apt autoremove
    Reading package lists... Done
    Building dependency tree       
    Reading state information... Done
    You might want to run 'apt --fix-broken install' to correct these.
    The following packages have unmet dependencies:
     libpam-systemd : Depends: systemd (= 232-19)
     plymouth : Depends: systemd (>= 232-8~)
    E: Unmet dependencies. Try 'apt --fix-broken install' with no packages (or specify a solution).
carpette@carpette:~$ sudo apt --fix-broken install
    Reading package lists... Done
    Building dependency tree       
    Reading state information... Done
    Correcting dependencies... Done
    The following additional packages will be installed:
      systemd
    Suggested packages:
      systemd-ui systemd-container
    The following NEW packages will be installed:
      systemd
    0 upgraded, 1 newly installed, 0 to remove and 461 not upgraded.
    56 not fully installed or removed.
    Need to get 2466 kB of archives.
    After this operation, 9564 kB of additional disk space will be used.
    Do you want to continue? [Y/n] 
    Get:1 http://http.us.debian.org/debian testing/main amd64 systemd amd64 232-19 [2466 kB]
    Fetched 2466 kB in 1s (2170 kB/s) 
    (Reading database ... 61585 files and directories currently installed.)
    Preparing to unpack .../systemd_232-19_amd64.deb ...
    Unpacking systemd (232-19) ...
    dpkg: error processing archive /var/cache/apt/archives/systemd_232-19_amd64.deb (--unpack):
     trying to overwrite '/bin/loginctl', which is also in package systemd-services 204-5ubuntu20.24
    dpkg-deb: error: subprocess paste was killed by signal (Broken pipe)
    Errors were encountered while processing:
     /var/cache/apt/archives/systemd_232-19_amd64.deb
    E: Sub-process /usr/bin/dpkg returned an error code (1)

Como você pode ver, ainda há muitos pacotes para atualizar, mas eu estou preso com este pacote systemd . Eu realmente não quero instalá-lo, não tenho idéia se é necessário obtê-lo ou não, eu só quero atualizar a máquina para que ele seja atualizado para os lançamentos mais recentes.

A máquina está atualmente em execução e o daemon apache2, mysql, e é usado para vários sites pequenos. Eu posso desligá-los para o tempo da manutenção (se não for muito longo)

Na verdade, esta é a descrição da máquina:

carpette@carpette:~$ cat /etc/lsb-release 
    DISTRIB_ID=Ubuntu
    DISTRIB_RELEASE=14.04
    DISTRIB_CODENAME=trusty
    DISTRIB_DESCRIPTION="Ubuntu 14.04.2 LTS"
    
por Carpette 04.04.2017 / 11:59

1 resposta

5

Como Stephen Kitt mencionado em um comentário, parece que você tentou atualizar o sistema do Ubuntu 14.04 para o teste Debian. Isso não vai funcionar. A pista está nesta linha da saída do seu shell:

    Get:1 http://http.us.debian.org/debian testing/main amd64 systemd amd64 232-19 [2466 kB]

Veja o http.us.debian.org lá? Isso não é um local de repositório do Ubuntu. systemd é um dos pacotes principais absolutos do sistema. O que quer que você tenha tentado fazer, é um sinal de que o que você fez foi a coisa errada a se fazer.

Meu palpite é que você adicionou um repositório Debian à configuração do gerenciador de pacotes do seu sistema Ubuntu, e então tentou realizar uma "atualização", implícita ou explicitamente.

Seu sistema provavelmente está em uma mistura de estados entre o Debian e o Ubuntu. Eu arriscaria um palpite de que é improvável que ele volte se for desligado ou reinicializado, pelo menos não sem grandes reparos.

Enquanto o Ubuntu e o Debian usam o kernel do Linux, e ambos usam pacotes similares, o sidegrading (hesite em chamar de atualização) um sistema de um para o outro no local não é uma operação suportada. A sua melhor aposta neste momento é provavelmente levar os arquivos importantes desse sistema e migrar para um novo sistema que é instalado com a sua distribuição preferida do Linux.

É possível que alterar a configuração do gerenciador de pacotes de volta para uma configuração do Ubuntu e executar um apt-get dist-upgrade possa colocar o sistema de volta em um estado utilizável, mas isso também pode fazer coisas pior. Não só é provável que o Debian Testing ofereça versões de pacotes muito mais recentes do que qualquer versão atual do Ubuntu (quanto mais 14.04), mas as atualizações de versão do pacote também podem ter feito coisas como arquivos de configuração reescritos. Eu não estou dizendo que isso é impossível de reparar in-place, mas eu estou dizendo que é quase certo que será muito mais problema do que vale a pena. E, sem querer ofender, mas se você cair nessa armadilha, tenho minhas dúvidas de que você seria capaz de abrir caminho sem uma significativa mão . Nesse caso, pedir um resgate de helicóptero é a melhor opção.

    
por 04.04.2017 / 12:55