Debian dpkg quebrado após o upgrade do apt-get

4

Eu uso o Debian Wheezy há muito tempo. Hoje eu corri um dpkg upgrade , que de alguma forma quebrou as coisas mal. A atualização foi anulada e agora apt-get e dpkg não estão em execução.

# dpkg
dpkg: error while loading shared libraries: libselinux.so.1: cannot open shared object file: No such file or directory

Eu posso baixar os arquivos .deb que contêm os arquivos ausentes, mas não consigo instalá-los sem ferramentas de trabalho. Como faço para sair dessa captura 22?

    
por Thorarin 25.06.2013 / 00:00

2 respostas

2

Arquivos de biblioteca nos diretórios padrão devem ser registrados em um cache para desempenho. Se a atualização for abortada na hora errada, é possível que você tenha arquivos de biblioteca que estejam presentes no sistema de arquivos, mas não no cache. Execute ldconfig como root para atualizar o cache.

Para ajudar na resolução de problemas de bibliotecas dinâmicas, pode ajudar a ter alguns conjuntos de utilitários estaticamente ligados: busybox-static , < href="http://packages.debian.org/sash"> sash , zsh-static .

    
por 25.06.2013 / 01:48
2

Você pode extrair o conteúdo de um arquivo .deb usando uma combinação dos comandos ar e tar :

mkdir /tmp/selinux
cd /tmp/selinux
ar p /path/to/libselinux.deb data.tar.gz | tar xz

Esse conteúdo será descompactado em uma hierarquia com raiz no diretório atual e você poderá mover os arquivos necessários para o local apropriado. Para o libselinux, é provável que seja apenas /lib/x86_64-linux-gnu/libselinux.so.1 (nome do diretório dependendo da sua arquitetura).

Depois que você estiver trabalhando novamente, provavelmente use dpkg -i para reinstalar o pacote completo.

    
por 25.06.2013 / 00:35

Tags