Não é possível remover os pacotes da biblioteca CLI

2

Eu estava instalando alguns pacotes e durante a instalação de um, o sistema ficou inativo e o pacote não foi instalado. Mas o pacote foi adicionado à lista de pacotes instalados. Então, eu reinicio o sistema e tento o seguinte:

  • Quando tento remover o pacote, ele não funciona porque não é possível encontrar um arquivo de configuração.

  • Quando tento instalar o pacote, ele diz que o pacote já está instalado e, portanto, não o instalará

  • Quando tento atualizar, ele tenta remover o pacote e encontra o erro acima.

Então, minha pergunta é se existe uma maneira de remover manualmente um pacote da lista de pacotes instalados, ou existe outra maneira de resolver esse problema?

Quando eu executo: sudo apt-get upgrade

O erro é:

Reading package lists... Done
Building dependency tree
Reading state information... Done
Calculating upgrade... Done
The following packages will be REMOVED:
  libglade2.0-cil libglib2.0-cil libgtk2.0-cil
0 upgraded, 0 newly installed, 3 to remove and 0 not upgraded.
18 not fully installed or removed.
After this operation, 2,819 kB disk space will be freed.
Do you want to continue? [Y/n] Y
(Reading database ... 119043 files and directories currently installed.)
Removing libglade2.0-cil (2.12.26-0xamarin1) ...
E: File does not exist: /usr/share/cli-common/packages.d/policy.2.8.glade-sharp.installcligac
dpkg: error processing package libglade2.0-cil (--remove):
 subprocess installed post-removal script returned error exit status 1
Removing libgtk2.0-cil (2.12.26-0xamarin1) ...
E: File does not exist: /usr/share/cli-common/packages.d/policy.2.6.gtk-dotnet.installcligac
dpkg: error processing package libgtk2.0-cil (--remove):
 subprocess installed post-removal script returned error exit status 1
Removing libglib2.0-cil (2.12.26-0xamarin1) ...
E: File does not exist: /usr/share/cli-common/packages.d/policy.2.6.glib-sharp.installcligac
dpkg: error processing package libglib2.0-cil (--remove):
 subprocess installed post-removal script returned error exit status 1
Errors were encountered while processing:
 libglade2.0-cil
 libgtk2.0-cil
 libglib2.0-cil
E: Sub-process /usr/bin/dpkg returned an error code (1)
    
por Ginkoid 08.04.2017 / 19:09

1 resposta

2

Existem algumas abordagens para tentar.

O primeiro é corrigir /usr/share/cli-common/policy-remove , para que não falhe se a política estiver ausente: edite sua última linha para executar rm -f em vez de rm . Isso deve permitir que os pacotes sejam removidos corretamente.

Se isso falhar, e já que você está tentando remover todos os pacotes Mono, ele deve ser seguro o suficiente para remover os scripts postrm com falha:

sudo rm /var/lib/dpkg/info/lib{glade,glib,gtk}2.0-cil.postrm

A única operação que os scripts postrm fazem é cancelar o registro das políticas, com as quais você não se preocupa, já que você está removendo tudo de qualquer maneira.

Você não é a única pessoa que sofreu com este problema: foi relatado em 2012 como Bug do Debian 692962 .

    
por 08.04.2017 / 20:42