Removendo o programa após remover acidentalmente sua pasta de instalação

3

Como posso remover ou reinstalar um programa depois que eu acidentalmente removi sua pasta de instalação?

Eu acidentalmente removi a pasta /opt/spotify/ e não consigo reinstalar spotify-client nem limpá-la.

 sudo apt-get purge spotify-client
 Reading package lists... Done
 Building dependency tree       
 Reading state information... Done
 The following packages will be REMOVED:
   spotify-client*
 0 upgraded, 0 newly installed, 1 to remove and 45 not upgraded.
 1 not fully installed or removed.
 After this operation, 143 MB disk space will be freed.
 Do you want to continue? [Y/n] 
 (Reading database ... 276312 files and directories currently installed.)
 Removing spotify-client (1:0.9.17.1.g9b85d43.7-1) ...
 /var/lib/dpkg/info/spotify-client.prerm: 9: cd: can't cd to /opt/spotify/spotify-client
 dpkg: error processing package spotify-client (--purge):
  subprocess installed pre-removal script returned error exit status 2
 /var/lib/dpkg/info/spotify-client.postinst: 5: cd: can't cd to /opt/spotify/spotify-client
 dpkg: error while cleaning up:
  subprocess installed post-installation script returned error exit status 2
 Errors were encountered while processing:
  spotify-client
 E: Sub-process /usr/bin/dpkg returned an error code (1)

e

sudo apt-get install --reinstall spotify-client
Reading package lists... Done
Building dependency tree       
Reading state information... Done
0 upgraded, 0 newly installed, 1 reinstalled, 0 to remove and 45 not upgraded.
1 not fully installed or removed.
After this operation, 0 B of additional disk space will be used.
E: Internal Error, No file name for spotify-client:amd64

Claro, a pasta não está no lixo! Obrigado!

    
por Sfrow 07.10.2015 / 18:13

2 respostas

0

Você pode contornar a situação usando uma combinação de apt e dpkg . Primeiro baixe o pacote deb do repositório

apt-get download <packagename>

Em seguida, instale o arquivo .deb (ele está na pasta atual)

sudo dpkg -i <downloaded_package_file.deb>

Se isso não funcionar, adicione a opção --force-all a dpkg , ou seja,

sudo dpkg -i --force-all <downloaded_package_file.deb>

Se ainda não funcionar, adicione também --no-triggers

sudo dpkg -i --force-all --no-triggers <downloaded_package_file.deb>

Como último recurso (não recomendado) , você pode editar manualmente /var/lib/dpkg/status :

  • faça um backup do arquivo
  • localize e exclua o bloco referente a spotify-client
  • mantenha a linha vazia antes do próximo bloco
  • salvar
  • apt-get -f install spotify-client
por Jan 07.10.2015 / 21:22
0

O que eu costumo fazer é obter uma listagem de arquivos do pacote e, em seguida, eliminar todos esses arquivos e, em seguida, reinstalar:

  1. Remover: apt-get remove spotify-client
  2. Limpar os arquivos completamente: apt-file list spotify-client | cut -d' ' -f 2 | xargs rm -rf
  3. Em seguida, reinstale: apt-get install spotify-client
por user1529891 07.10.2015 / 21:33