dpkg é confuso desde que eu removi manualmente arquivos de instalação para spotify com sudo rm recursivo

2
Então eu estava lendo para aprender sobre como funciona a instalação de pacotes e pacotes no Ubuntu em geral e onde os arquivos responsáveis pela existência de qualquer aplicativo (arquivos de instalação) residem no meu sistema de arquivos. Eu aprendi que quando um gerenciador de pacotes instala um aplicativo, spotify por exemplo, ele irá colocar arquivos diferentes em locais diferentes, e isso usando o comando

sudo dpkg -L spotify-client

como exemplo, eu seria capaz de ver onde os arquivos de instalação do aplicativo spotify são espalhados pelo sistema de arquivos. Então eu decidi que queria removê-los manualmente e praticar o que eu acabei de aprender (eu gostaria de não ter) e eu fui para todos os locais e realizei um desastroso

sudo rm -r

comando para remover um arquivo de cada vez.

Depois disso, pensei que meu spotify desapareceria do sistema e todos ficariam felizes, mas eu comecei a ver esse erro sempre que tentava instalar ou remover qualquer pacote

# sudo apt-get install grive
Reading package lists... Done
Building dependency tree       
Reading state information... Done
grive is already the newest version.
0 upgraded, 0 newly installed, 0 to remove and 42 not upgraded.
1 not fully installed or removed.
After this operation, 0 B of additional disk space will be used.
Do you want to continue? [Y/n] y
Setting up spotify-client (1:0.9.17.1.g9b85d43.7-1) ...
/var/lib/dpkg/info/spotify-client.postinst: 5: /var/lib/dpkg/info/spotify-client.postinst: ./register.sh: not found
dpkg: error processing package spotify-client (--configure):
 subprocess installed post-installation script returned error exit status 127
Errors were encountered while processing:
 spotify-client
E: Sub-process /usr/bin/dpkg returned an error code (1)
    
por Ramy Farid 20.11.2015 / 11:36

1 resposta

1

A remoção de arquivos instalados por um pacote é sempre uma má idéia . Edite o arquivo /var/lib/dpkg/info/spotify-client.postinst

sudo nano /var/lib/dpkg/info/spotify-client.postinst

e remova a linha, se presente

set -e

Salvar, fechar e executar

sudo apt-get purge spotify-client

Mas como você diz:

  

usando o comando "sudo dpkg -L spotify-client", como um exemplo, para ver onde os arquivos de instalação do aplicativo spotify são espalhados pelo sistema de arquivos. Então eu decidi que queria removê-los manualmente

Você também pode remover os scripts de instalação e remoção de spotify-client em /var/lib/dpkg/info/ . Mais você não pode quebrar.

sudo rm /var/lib/dpkg/info/spotify-client.*
sudo apt-get purge spotify-client
sudo apt-get install -f
    
por A.B. 20.11.2015 / 11:39