Recuperar Arch Linux quebrado

Publicado por Orlando Noronha em 30/01/2013

[ Hits: 9.355 ]

 


Recuperar Arch Linux quebrado



Pessoal, acredito que muitos já passaram por isso e, como eu, talvez não tenham encontrado nada além de um "reinstale o sistema inteiro".

Bem, o cenário é basicamente assim:

O sistema está lindo, funcionando perfeitamente, aí atualizamos com "pacman -Syu" e nos deparamos com uma falha como:

"glibc não poder ser atualizado"

ou:
"filesystem: já existe em /usr/lib64"


Então buscamos dicas e em alguma delas existe a opção (nada segura porém) recomendada de usar o --force ou -f para forçar a atualização. Em tese é para funcionar e até funciona, mas em alguns casos o sistema "quebra". O comando pacman para, assim como quase todos os outros, com exceção de alguns como "cd" e "exit" por exemplo.

Sem querer reinstalar tudo e não querendo desta vez desistir, tive a seguinte ideia:

- Vou rever os passos de instalação do sistema e ver o que posso fazer sem acabar com ele todo.

Os passos foram os seguintes:
  1. Dei boot pelo CD de instalação; no meu caso usei o 64 bits;
  2. Montei as duas partições que me eram necessárias; no meu caso a partição onde estava o sistema quebrado e outra para onde eu faria backup de arquivos importantes, pois eu não sabia se daria certo, então melhor não arriscar; :D
  3. Após isso, desmontei a partição para onde enviei os backups por questão de segurança;
  4. Preparei a swap como se fosse instalar do zero;
  5. Dei o comando pacstrap normalmente, como se estivesse em uma nova instalação, porém apenas com o base e base-devel para serem reinstalados no sistema quebrado.

    Neste momento houve um problema, pois o sistema não podia sobrescrever a pasta com os arquivos problemáticos, à saber: "/usr/lib64"; o que fiz foi apagá-la com o "rm -R [CaminhoDaPasta]";

  6. Refiz agora o 5° passo e pronto.

Daí tentei gerar o fstab, mas percebi que estava apenas reescrevendo as mesmas coisas no arquivo e não precisava fazer mais nada, somente reiniciar e pronto.

Escrevo esta dica do sistema recuperado, funcionando perfeitamente com todos os programas. Até o presente momento tudo está OK e o sistema atualizado. Graças a DEUS!!! :D

Pois então é isso, qualquer dúvida estamos aí.

Outras dicas deste autor
Nenhuma dica encontrada.
Leitura recomendada

Link simbólico e hardlink

Configurando parâmetros ajustáveis do sistema de arquivos ext*

Fazendo backup com o SSH

Gravando arquivos .nrg (do Nero) no Linux

Acessando dados de uma pasta /home encriptada

  

Comentários
[1] Comentário enviado por erisrjr em 03/02/2013 - 21:09h

"...Então buscamos dicas e em alguma delas existe a opção (nada segura porém) recomendada de usar o --force ou -f para forçar a atualização..."

Isto NÂO é recomendável para este caso (E para a imensa maioria das atualizações, que venham a requerer alguma intervenção manual).



Este problema teria sido evitado, consultando a pagina da distribuição(Uma boa pratica em qualquer distro, mas fundamental no Arch, onde sempre que existe alguma atualização "problemática" ou que exija intervenção manual, a mesma é anunciada previamente) ao receber a mensagem do pacman:


https://www.archlinux.org/news/update-filesystem-201301-1-and-glibc-217-2-together/

http://archlinux-br.org/noticias/206/


Seguindo isso, será muito difícil um problema como esse acontecer.
*Aqui utilizo o Arch desde o final de 2008 e sequer uma vez(Nunca), tive um problema grave com sistema devido a atualizações.

[2] Comentário enviado por lim em 04/02/2013 - 09:34h

Desculpe amigo erisrjr, lendo no próprio site do arch, algumas páginas como esta -> https://www.archlinux.org/news/filesystem-upgrade-manual-intervention-required-1/ falam justamente de usar o --force.

Note: In general, it is strongly advised to avoid the --force switch as it is not safe. However, in this particular case it is safe, and suggested to avoid having to manually delete the /var/run or /var/lock symlinks.

Nota: Em geral, é fortemente aconselhado evitar a opção - -force, pois não é seguro. No entanto, neste caso particular, é seguro, e sugerido para evitar ter que apagar manualmente os links simbólicos /var/run ou / var/lock.

Assim também foi comigo, ao identificar o problema com a atualização busquei e achei notícias sobre o por que de não poder atualizar no próprio site do Arch. Lendo a ajuda do próprio site tive problemas. Minha dica foi no intuito de ajudar novatos no Arch e outros não tão novatos mas que possam vir a ter problemas como o meu afinal todos podemos ter algum problema uma vez ou outra e as vezes deixamos escapar alguma dica da equipe do Arch ou nosso caso em particular pode não ter dicas lá.

Grato por seu comentário

[3] Comentário enviado por erisrjr em 04/02/2013 - 20:04h

@Landox o link que enviou é de uma atualização diferente da citada na sua dica e dos links que enviei, onde no site oficial da distribuição exibi-se a seguinte informação:

" [b]Notícia: Atualize juntos filesystem-2013.01-1 e glibc-2.17-2[/b]

Devido a mudança do symlink "/lib" do pacote glibc para o pacote filesystem, [b]é requerida a atualização em conjunto do glibc-2.17-2 e filesystem-2013.01-1[b/]. Acontecerá automaticamente quando você executa "pacman -Syu". Fique atento, updates parciais não são suportados e não use a opção "--force"...

Um problema em potencial no upgrade em x86_64 é encontrar conflitos de arquivos no /usr/lib64. Todos os pacotes do Arch Linux que tiverem arquivos neste diretório estão sendo atualizados, então atualize individualmente estes pacotes (glibc e filesystem) primeiro. Qualquer pacote no AUR com arquivos neste diretório deve ser atualizado para instala-los no /usr/lib."

Neste caso, o cuidado a ser tomado é o de atualizar os pacotes filesystem e glibc juntos, via pacmam -Syu. e que verifique os pacotes que por ventura utilizem o /usr/lib64 (Não atualizados ou do AUR) e indica claramente:

[b]Fique atento, updates parciais não são suportados e não use a opção "--force".[/b]


Entretanto sua dica é muito util para quem não verificou isto antes de atualizar ou não seguiu a recomendação (Isto não é nenhum crime, porem pode causar problemas), mas ao faze-lo(Verificar) uma situação como:

[i]
"Pessoal, acredito que muitos já passaram por isso e, como eu, talvez não tenham encontrado nada além de um "reinstale o sistema inteiro".

Bem, o cenário é basicamente assim:

O sistema está lindo, funcionando perfeitamente, aí atualizamos com "pacman -Syu" e nos deparamos com uma falha como: ..."[/i]

Dificilmente ocorre.


Aqui, bastou atualizar o sistema com um pacman -Syu e tudo continuou funcionando.

[4] Comentário enviado por lim em 05/02/2013 - 09:28h

Amigo fico feliz que para você tudo saiu bem e seu Arch esta firme e forte, mas só por que em sua máquina funcionou perfeitamente não quer dizer que em outras funcione. Se leu a página que citei (Como exemplo) então viu que lá eles recomendam o uso do --force ou -f afirmando que naquele caso é necessário e melhor do que deletar manualmente os arquivos e diretórios que precisam ser substituídos ou retirados. Infelizmente já tive outros problemas além destes e em um deles fiquei um tempo sem usar o Arch, no entando me agradei tanto deste Roling Release que a saudade foi grande. Agora lembre - se que problemas de conflitos em lib's vão além de atualizações feitas com "pacman -Syu" existem os casos onde o user simplesmente instala manualmente, deleta algo ocasionando a "quebra" do sistema.

Mais uma vez agradeço seu entusiasmo e sua prontidão em ajudar. Sua dica é muito valorosa para a comunidade e se ainda não fez nenhum Post acerca disso, seria bom pois contribuiria bastante.



Contribuir com comentário