O que realmente faz uma varredura de sistema de arquivos?

2

Como as verificações de sistema de arquivos (como CHKDSK ou fsck ) realmente funciona? Eu sei que existem aplicativos completos com muitas opções, mas como eles examinam setores "ruins"? O que eles estão fazendo ao digitalizar? Como eles sabem que encontraram um setor "ruim"?

    
por Mike 09.01.2013 / 17:04

2 respostas

3

A verificação do sistema de arquivos não tem nada a ver com a verificação de setores "inválidos". Os setores "ruins" neste contexto geralmente significam setores que não podem ser lidos de maneira confiável ou não podem ser escritos de forma confiável. Embora uma checagem do sistema de arquivos possa certamente se deparar com um setor defeituoso, uma vez que ele tenta ler (e talvez escrever) blocos em todo o sistema de arquivos.

O que realmente faz uma verificação do sistema de arquivos depende de cada sistema de arquivos individual e até o implementador do utilitário de verificação do sistema de arquivos. Para alguns tipos de sistemas de arquivos (por exemplo, NFS e tmpfs ), o conceito não tem sentido, para outros ele é redundante, porque o sistema de arquivos verifica continuamente a si mesmo durante a operação normal, e para outros é vital verificar o sistema de arquivos de vez em quando.

Em geral, os utilitários de verificação do sistema de arquivos são projetados para verificar se há corrupção, inconsistências e invariantes violadas nas estruturas de dados do sistema de arquivos. Se você quer mais detalhes do que isso, então você terá que perguntar sobre um tipo específico de sistema de arquivos.

    
por 09.01.2013 / 17:37
2

O CHKDSK faz algumas coisas nos bastidores. Eles estão representados nas diferentes fases do CHKDSK.

O NTFS tem algo chamado de MFT (ou Master File Table). Esta MFT é uma lista de todos os arquivos no disco rígido. Para verificar a consistência do arquivo, o CHKDSK lê a entrada da MFT por entrada e, em seguida, sobe e procura o arquivo correspondente no HDD.

Por exemplo, o CHKDSK encontra MyPhoto1.jpg na MFT. A MFT diz que está localizada no setor 230 e tem 30 setores de extensão. CHKDSK, em seguida, vai e lê o setor 230 a 260 e vê que ele é de fato preenchido por dados e é um arquivo. É assim que o CHKDSK verifica a consistência do sistema de arquivos. A inconsistência de arquivos não significa necessariamente um setor defeituoso, pode significar que o computador foi desligado durante uma gravação no HDD.

Com o sinalizador / r (recuperar), o CHKDSK verifica as inconsistências do arquivo e tenta repará-las. Sem esse sinalizador, o chkdsk executa uma "execução a seco"

Com o sinalizador / f (correção), o CHKDSK tenta reparar o setor defeituoso. Em outras palavras, ele tenta recuperar os dados do setor defeituoso e tenta reescrever esse setor. Se o CHKDSK ler o que ele escreveu no setor em questão, ele poderá marcar os setores como reparados.

    
por 09.01.2013 / 18:01