apt-get upgrade foi abortado como recuperar? (incompatibilidade de soma de hash)

1

Perguntei em StackOverflow , mas fui redirecionado aqui.

Eu tenho medo de ter feito uma espécie de booboo.

Durante a execução de um apt-get upgrade (havia cerca de 160+ pacotes na fila), eu acidentalmente desconectei, abortando assim a atualização no meio do caminho. Agora não consigo reiniciar a atualização.

apt-get upgrade diz que não há pacotes para atualizar ...

apt-get update dá erros:

W: Failed to fetch http://security.debian.org/dists/wheezy/updates/main/binary-armel/Packages  Hash Sum mismatch

W: Failed to fetch http://security.debian.org/dists/wheezy/updates/contrib/binary-armel/Packages  Hash Sum mismatch

W: Failed to fetch http://security.debian.org/dists/wheezy/updates/non-free/binary-armel/Packages  Hash Sum mismatch

[several more of these... and ending in: ]
E: Some index files failed to download. They have been ignored, or old ones used instead.
E: Couldn't rebuild package cache

A saída completa é aqui em pastebin

Eu tentei isso sem sucesso:

  • apt-get -f install

Saída:

Reading package lists... Done
Building dependency tree
Reading state information... Done
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
  • dpkg --configure -a

Nenhuma saída

  • rm -vf /var/lib/apt/lists/*; rm -vf /var/lib/apt/lists/partial/*; apt-get update

Os mesmos erros acima.

  • dpkg-reconfigure -a

Eventualmente aborta depois disso:

[ ok ] Stopping acpid (via systemctl): acpid.service.
[ ok ] Starting acpid (via systemctl): acpid.service.
[ ok ] Stopping apache2 (via systemctl): apache2.service.
[ ok ] Starting apache2 (via systemctl): apache2.service.
gpg: key B98321F9: "Squeeze Stable Release Key <[email protected]>" not changed
gpg: key 473041FA: "Debian Archive Automatic Signing Key (6.0/squeeze) <[email protected]>" not changed
gpg: key 65FFB764: "Wheezy Stable Release Key <[email protected]>" not changed
gpg: key 46925553: "Debian Archive Automatic Signing Key (7.0/wheezy) <[email protected]>" not changed
gpg: key 518E17E1: "Jessie Stable Release Key <[email protected]>" not changed
gpg: key 2B90D010: "Debian Archive Automatic Signing Key (8/jessie) <[email protected]>" not changed
gpg: key C857C906: "Debian Security Archive Automatic Signing Key (8/jessie) <[email protected]>" not changed
gpg: Total number processed: 7
gpg:              unchanged: 7
[ ok ] Stopping avahi-daemon (via systemctl): avahi-daemon.service.
[ ok ] Reloading dbus configuration (via systemctl): dbus.service.
[ ok ] Starting avahi-daemon (via systemctl): avahi-daemon.service.
update-alternatives: using /usr/share/man/man7/bash-builtins.7.gz to provide /usr/share/man/man7/builtins.7.gz (builtins.7.gz) in auto mode
update-initramfs: deferring update (trigger activated)
[ ok ] Starting loadcpufreq (via systemctl): loadcpufreq.service.
[ ok ] Starting cpufrequtils (via systemctl): cpufrequtils.service.
[ ok ] Stopping cron (via systemctl): cron.service.
[ ok ] Starting cron (via systemctl): cron.service.
[ ok ] Starting dbus (via systemctl): dbus.service.
update-initramfs: deferring update (trigger activated)
update-initramfs: deferring update (trigger activated)
update-initramfs: deferring update (trigger activated)
Regenerating fonts cache... done.
udev active, skipping device node creation.
update-initramfs: deferring update (trigger activated)
dpkg-query: error: --status needs a valid package name but 'gcc-4.7-base' is not: ambiguous package name 'gcc-4.7-base' with more than one installed instance

Use --help for help about querying packages.
/usr/sbin/dpkg-reconfigure: gcc-4.7-base is not installed

Eu não sei como descobrir o que foi instalado e o que não foi.

Todas as dicas de como se recuperar disso são muito bem-vindas!

    
por Mausy5043 27.11.2015 / 19:48

1 resposta

1

Isso provavelmente deve ser movido para o superusuário ou algo assim, mas já que você já foi redirecionado ...

Primeiro, sugiro que você execute essas coisas em uma sessão de tela . Isso manterá a atualização em andamento quando você fizer logout ou a conexão for interrompida:

screen -S upd

Para separar a sessão, pressione CTRL a e, em seguida, pressione d

Para anexar novamente o tipo de sessão:

screen -r upd

Também será útil colar a saída das coisas listadas, que você tentou sem sucesso.

Algumas sugestões:

  • você tentou alternar o repositório
  • você removeu recursivamente / var / lib / apt / lists / *
  • você mkdir / var / lib / apt / lists / partial

Eu recebi minhas sugestões de: link

Editar : a julgar pelas informações que você adicionou, pode ser necessário forçar a remoção do gcc-4.7-base e, em seguida, reinstalá-lo e repetir dpkg-reconfigure -a . Se ele falhar por outro pacote, repita este processo até conseguir, então execute novamente o apt-get (dist-) upgrade.

    
por 28.11.2015 / 04:19

Tags