![como corrigir esse problema de apt no Ubuntu 18.04 LTS?](https://rvso.com/image/1157256/como%20corrigir%20esse%20problema%20de%20apt%20no%20Ubuntu%2018.04%20LTS%3F.png)
mensagem de erro de atualização do sistema:
o sistema de pacotes está quebrado
Verifique se você está usando repositórios de terceiros. Nesse caso, desative-os, pois são uma fonte comum de problemas. Além disso, execute o seguinte comando em um Terminal: apt-get install -f quando tento sudo apt-get istall -f
recebo uma mensagem de erro:
(Reading database ... 172407 files and directories currently installed.)
Preparing to unpack .../libnvidia-gl-390_390.59-0ubuntu0~gpu18.04.1_i386.deb ...
diversion of /usr/lib/i386-linux-gnu/libGL.so.1 to /usr/lib/i386-linux-gnu/libGL.so.1.distrib by nvidia-340
dpkg-divert: error: mismatch on package
when removing 'diversion of /usr/lib/i386-linux-gnu/libGL.so.1 by libnvidia-gl-390'
found 'diversion of /usr/lib/i386-linux-gnu/libGL.so.1 to /usr/lib/i386-linux-gnu/libGL.so.1.distrib by nvidia-340'
dpkg: error processing archive /var/cache/apt/archives/libnvidia-gl-390_390.59-0ubuntu0~gpu18.04.1_i386.deb (--unpack):
new libnvidia-gl-390:i386 package pre-installation script subprocess returned error exit status 2
Preparing to unpack .../libnvidia-gl-390_390.59-0ubuntu0~gpu18.04.1_amd64.deb ...
diversion of /usr/lib/x86_64-linux-gnu/libGL.so.1 to /usr/lib/x86_64-linux-gnu/libGL.so.1.distrib by nvidia-340
dpkg-divert: error: mismatch on package
when removing 'diversion of /usr/lib/x86_64-linux-gnu/libGL.so.1 by libnvidia-gl-390'
found 'diversion of /usr/lib/x86_64-linux-gnu/libGL.so.1 to /usr/lib/x86_64-linux-gnu/libGL.so.1.distrib by nvidia-340'
dpkg: error processing archive /var/cache/apt/archives/libnvidia-gl-390_390.59-0ubuntu0~gpu18.04.1_amd64.deb (--unpack):
new libnvidia-gl-390:amd64 package pre-installation script subprocess returned error exit status 2
Errors were encountered while processing:
/var/cache/apt/archives/libnvidia-gl-390_390.59-0ubuntu0~gpu18.04.1_i386.deb
/var/cache/apt/archives/libnvidia-gl-390_390.59-0ubuntu0~gpu18.04.1_amd64.deb
E: Sub-process /usr/bin/dpkg returned an error code (1)
Como posso consertar isso ?
Responder1
Primeiro exclua o .deb usando
sudo rm /var/cache/apt/archives/libnvidia-gl-390_390.59-0ubuntu0~gpu18.04.1_i386.deb
sudo rm /var/cache/apt/archives/libnvidia-gl-390_390.59-0ubuntu0~gpu18.04.1_amd64.deb
em seguida, apague todos os arquivos baixados do cache.
sudo apt-get clean
sudo apt-get autoremove && sudo apt-get autoclean
sudo apt-get install -f
sudo apt-get update
Por fim, tente instalar uma nova cópia do seu aplicativo usando sudo apt-get install
Responder2
A parte relevante da mensagem de erro é esta:
when removing 'diversion of /usr/lib/i386-linux-gnu/libGL.so.1 by libnvidia-gl-390'
found 'diversion of /usr/lib/i386-linux-gnu/libGL.so.1 to /usr/lib/i386-linux-gnu/libGL.so.1.distrib by nvidia-340'
"Desvios" são uma coisa do dpkg. O pacote Nvidia-340 deve ter criado essas diversões e nunca as removido. Para verificar, faça
dpkg-divert --list nvidia-340
e listará cada desvio especificado.
diversion of /usr/lib/x86_64-linux-gnu/libGL.so.1 to /usr/lib/x86_64-linux-gnu/libGL.so.1.distrib by nvidia-340
...
Você pode remover esses desvios passando o nome do arquivo desviado para (precisa de root)
dpkg-divert --remove /usr/lib/x86_64-linux-gnu/libGL.so.1
Depois de limpar as diversões antigas, a instalação dos pacotes de driver da Nvidia mais recentes apt
deverá ser bem-sucedida.