Recuperando uma instalação do Ubuntu - O Ubuntu se alimenta após 'sudo apt-get install -f'

3

O atualizador (eu suponho) colocou um ícone de alerta no estilo de entrada no painel que me informou que certas dependências de pacotes não estavam boas. Os upgrades foram depois apenas parciais. O diálogo avisou que eu sudo apt-get install -f . Eu fiz isso esperando que o app-get preenchesse as dependências e substituísse os arquivos corrompidos e assistisse sistematicamente remover todos os componentes do linux, tanto as coisas que eu tinha instalado quanto os pacotes principais do Ubuntu. Eu só poderia supor nesta fase que isso estava em preparação para uma nova instalação, mas, claro, eu sei melhor agora - se você se encontrar com o apt-get avisando que você está prestes a remover várias centenas de pacotes e pedindo para você digitar Uma corda de confirmação envolvida deve ser aconselhada antes de prosseguir. Eu divago. Esta foi uma instalação de 64 bits de 12.04. Tudo o que resta é grub apontando para um par de partições de recuperação do Windows no disco rígido. Felizmente, a partição Ext4 é alcançável a partir de um boot stick.

EDITAR:

Eu entrei na máquina com um stick de 64 bits e posso ver a estrutura de arquivos deixada para trás pelo apt-get após a correção {ahem}. Meu primeiro instinto foi executar a instalação a partir do bastão, mas parecia querer fazer outra instalação em vez de um reparo. Minha pergunta então: existe uma maneira de recuperar a instalação atual para que, se eu reinstalar os pacotes que eu tinha, eles pegassem as configurações originais? Estou particularmente preocupado em perder e-mails da evolução - o resto eu provavelmente poderia atacar novamente.

Quanto ao uso de PPA, não sei ao certo o que você está dirigindo. Eu geralmente uso o Ubuntu Software Center para instalar software, embora eu tenha usado scripts de terminal para adicionar novos repositórios e software com sucesso seguindo orientações em vários sites. A mudança mais recente que fiz foi um downgrade do Wine em uma tentativa de instalar e rodar o excel2007 (uma necessidade, eu acho, já que tenho trabalho do VBA para fazer). O instalador parou e teve que ser morto. Gostaria de saber se isso corrompeu qualquer banco de dados que contém um modelo da estrutura de instalação do pacote.

Eu também estaria interessado em saber como esse desastre aconteceu. Eu vejo pessoas sabendo recomendando o sudo apt-get install -f como uma cura bastante inócua em circunstâncias similares.

Obrigado pela sua atenção

Tony Martin

p.s. Por favor, perdoe os aspectos rant do post original. É difícil escrever racionalmente com um grande buraco no estômago.

    
por Tony Martin 12.09.2012 / 20:47

4 respostas

3

Esse desastre tende a acontecer quando um pacote corrompido (geralmente um com dependências que não podem ser instaladas devido a não existirem ou o usuário ter configurado uma versão específica do pacote) está presente ou quando o usuário instalou um conflito dependências de um PPA. O sinalizador -f diz ao apt-get para encontrar qualquer solução que possa remover toda a quebra do sistema. Neste caso, a 'solução' foi remover quase todos os pacotes, então você deve ter tido um conflito de nível muito baixo em algum lugar. Ele verifica qual dependência parece não ser instalável e instala ou remove pacotes até que possa instalar essa dependência ou até que todos os pacotes que estão em conflito tenham desaparecido. Uma vez eu tive todas as partes do software GUI descendo até o X por causa de uma versão do LibreOffice empacotada incorretamente.

Você pode ver nesta imagem que um pacote de vinho ruim de um PPA pode realmente matar todo o sistema: Se libc6 fosse substituído por um PPA com outra versão que de fato faria com que o APT removesse todo o sistema. Quase tudo acaba dependendo da libc6 no final, incluindo o kernel, eu acho. Eu não estou dizendo com certeza que foi isso, apenas usando isso como um exemplo para mostrar como as dependências estão interconectadas.

Você pode usar o LiveUSB para copiar seus arquivos antes de reinstalar ou simplesmente reinstalar com as configurações avançadas de particionamento. Eu recomendo apenas usar as configurações avançadas para reinstalar, porque você salva a cópia de todos os arquivos do disco, desde que você não tenha armazenado nada fora de / home e / srv.

Você precisa ter certeza de que seu sistema de arquivos ext4 está configurado para montar em '/' e que a caixa em 'Formato' não está não marcada como está nesta imagem:

Qualquer coisa que não esteja armazenada em / srv ou / home será DELETADA .

Se você deseja usar o mesmo nome de usuário, deve mover ou renomear sua pasta de início antes de reinstalar, para que possa ser recriada com novas configurações de / etc / skel. Você pode então copiar os arquivos de configuração e os dados de onde você os moveu para seus locais apropriados após a reinstalação. Isto é necessário porque alguns programas (Firefox, por exemplo) não irão pegar os arquivos de configuração da sua instalação antiga automaticamente, mesmo se eles já estiverem na pasta inicial na primeira vez que você fizer o login. Alguns programas precisam ser executados primeiro, sair, e depois ter seus arquivos de configuração copiados.

Tenho certeza de que para evolução você pode simplesmente copiar o arquivo .evolution da sua antiga casa para a nova e fazer com que ela funcione normalmente. Você pode precisar executar a evolução uma vez e fechá-la antes de copiar, como mencionei acima.

De acordo com o seu comentário sobre como resolver este problema, o manual do apt-get (a seção sobre -f) sugere usar dpkg --remove $PACKAGE para remover o pacote que causa o problema manualmente. Este deve permitir que o apt seja executado novamente, pois o pacote que tenta extrair dependências inexistentes ou não instaláveis desaparecerá.

O problema que matou sua máquina é um acaso, simplesmente não deve acontecer em um lançamento estável do Ubuntu. O sistema de repositório é organizado para evitar que isso aconteça, mas a adição de um PPA X aleatório gera uma chave no que, de outra forma, é um sistema perfeito. Eu sugiro que você examine de perto o conteúdo de seus PPAs adicionados e quais pacotes de software estão instalados (e atualizados para) deles. Vários PPAs atualizam pacotes importantes do sistema para que o software que eles contêm funcione. Isso é ótimo até a nova dependência do PPA conflitos com o mais antigo no repositório. Neste ponto, o APT sempre instalará o mais novo, e o boom, seu sistema não atualizará nenhum pacote, porque o software repo do Ubuntu ainda precisa da versão antiga da biblioteca, que não será instalada.

Boa sorte para você. Por favor, comente se você tiver dúvidas ou se eu puder melhorar esta resposta.

    
por Mark Paskal 13.09.2012 / 07:17
2

A adição de recompras e downgrades de vinho pode ter causado problemas. Talvez depois de reinstalar, você possa usar o Playonlinux para sintonizar o Word? Inclui a configuração automática e seleciona a versão correta do Wine e as configurações automaticamente. Não mexe demais com o APT, então é mais seguro. Embora envolva o uso de um repositório, este funciona bem e não causará problemas, desde que a versão correta do Ubuntu seja selecionada. Quanto a recuperar suas configurações, você pode montar sua partição a partir do live CD e, em seguida, em sua pasta pessoal, pressionar Ctrl + H e copiar a pasta .evolution para uma unidade flash. Você também pode copiar outras pastas que desejar e depois restaurá-las em sua nova instalação.

Eu testei o PlayOnLinux com o Office '07 e ele funciona muito bem. Ele usa o Wine como executáveis e não usa o APT para obter versões do Wine.

    
por hexafraction 13.09.2012 / 00:43
1

A evolução do backup deve ser feita devido à opção no menu de dados - evolução do backup. apenas copiar .evolution não é uma possibilidade muito segura de restaurar a configuração antiga.

    
por gemue2010 15.09.2012 / 05:43
1

Consegui corrigir meu arquivo corrompido graças ao link .

    
por mcandre 24.05.2013 / 20:09