É possível reparar arquivos do sistema Linux? Ou é reinstalar a única opção?

4

Eu tenho uma pergunta sobre algo que sempre me incomodou sobre o Linux. No Windows, se algum dos arquivos do sistema ficar danificado, você pode reinstalar os arquivos do sistema sem ter que reformatar o disco, o que é uma ótima opção. Existe algo semelhante no Linux?

Eu uso uma distribuição Raspbian no meu Raspberry Pi, e meu sistema foi danificado novamente, depois de outro corte de energia. Ele estava rodando um servidor Netatalk funcionando como um TimeMachine para Mac. Depois de um corte de energia, o sistema não inicializava, eu tive que executar o fsck.ext4 no sistema de arquivos manualmente para consertá-lo - e ele tinha muitos erros para consertar. Depois de executar isso, o sistema inicializaria, mas há erros estranhos ao redor - ele não sabe o nome da máquina, então ele aparece como pi @ (desconhecido), alguns programas básicos do sistema como ls ou sudo me dão "permissão negada" erros, eu pluguei o cartão em outro computador e configurei manualmente as permissões corretas no sudo, mas agora, quando eu o executo, ele me envia o erro "Falha na Segmentação", então o arquivo está claramente danificado.

Agora, meu ponto é: seria muito difícil reinstalar tudo novamente. Existe uma opção para corrigi-lo, reinstalando todos os arquivos do sistema sem quebrar toda a minha configuração personalizada para netatalk?

    
por gambiting 20.01.2013 / 15:43

3 respostas

2

Em distros baseadas em Debian, aptitude reinstall <corrupted-packages> pode ajudá-lo a consertar as coisas.

Se você sabe que um arquivo específico foi corrompido, você pode obter o nome do pacote correspondente com dpkg -S /my/corrupted/file .

Você pode tentar reinstalar apenas os pacotes "sistema básico":

# aptitude reinstall "~prequired"
# aptitude reinstall "~pimportant"
# aptitude reinstall "~pstandard"

Você pode até tentar (ter muito cuidado) reinstalando tudo :

# aptitude reinstall "~i"

Eu nunca testei essas reinstalações "massivas", então ... não há garantia.

    
por 22.03.2013 / 14:45
0

Eu daria ou apt ou aptitude uma tentativa se a distro fosse baseada em Debian / Ubuntu.

Para distros baseadas no Redhat, como o CentOS / Fedora / RHEL, você pode usar o RPM para verificar e reparar alguns aspectos dos pacotes instalados.

verificar todos os pkgs

% rpm -qVav
.........    /usr/bin/rdesktop
.........    /usr/share/doc/rdesktop-1.6.0
.........  d /usr/share/doc/rdesktop-1.6.0/AUTHORS
.........  d /usr/share/doc/rdesktop-1.6.0/COPYING
.........  d /usr/share/doc/rdesktop-1.6.0/ChangeLog
.........  d /usr/share/doc/rdesktop-1.6.0/HACKING
.........  d /usr/share/doc/rdesktop-1.6.0/README
.........  d /usr/share/doc/rdesktop-1.6.0/TODO
.........  d /usr/share/doc/rdesktop-1.6.0/ipv6.txt
.........  d /usr/share/doc/rdesktop-1.6.0/keymap-names.txt
.........  d /usr/share/doc/rdesktop-1.6.0/keymapping.txt
...
...

verifica o openssh

% rpm -qVv openssh
.........    /etc/ssh
..?......  c /etc/ssh/moduli
.........    /usr/bin/ssh-keygen
.........    /usr/libexec/openssh
.........    /usr/libexec/openssh/ssh-keysign
.........    /usr/share/doc/openssh-5.5p1
.........  d /usr/share/doc/openssh-5.5p1/CREDITS
.........  d /usr/share/doc/openssh-5.5p1/ChangeLog
.........  d /usr/share/doc/openssh-5.5p1/INSTALL
.........  d /usr/share/doc/openssh-5.5p1/LICENCE
.........  d /usr/share/doc/openssh-5.5p1/OVERVIEW
...
...

corrigir permissões e propriedade

% rpm --setperms {packagename}
% rpm --setugids {packagename}

NOTA: Veja man rpm para mais detalhes sobre -V|--verify output.

Veja este artigo para mais detalhes: link .

    
por 20.01.2013 / 16:31
0

Nos sistemas Fedora (suspeito que isso seja realmente uma coisa do yum), você pode fazer yum reinstall <package> para reinstalar um pacote (que deve reparar a maioria dos danos). E rpm -Va fornece uma lista de pacotes com algum tipo de problema (veja no manual os detalhes da saída). Por algum motivo incompreensível, ele geralmente relata diferenças mesmo em pacotes recém-instalados, mas isso não me incomoda o suficiente para investigar mais (ainda). Em qualquer caso, se o dano for muito grave, resgate o que puder ser recuperado e reinstale ainda é sua melhor aposta.

    
por 21.01.2013 / 04:59