Como reparar uma corrupção do sistema de arquivos?

6

Debian na unidade SSD USB externa. Houve algum erro no arquivo de log dmesg :

...[    3.320718] EXT4-fs (sdb2): INFO: recovery required on readonly filesystem
[    3.320721] EXT4-fs (sdb2): write access will be enabled during recovery
[    5.366367] EXT4-fs (sdb2): orphan cleanup on readonly fs
[    5.366375] EXT4-fs (sdb2): ext4_orphan_cleanup: deleting unreferenced inode 6072
[    5.366426] EXT4-fs (sdb2): ext4_orphan_cleanup: deleting unreferenced inode 6071
[    5.366442] EXT4-fs (sdb2): 2 orphan inodes deleted
[    5.366444] EXT4-fs (sdb2): recovery complete
...

O sistema inicializa e funciona normalmente. É possível consertar isso completamente e qual é a maneira correta?

    
por triwo 01.10.2014 / 14:39

3 respostas

7

Você pode instruir o sistema de arquivos a executar um fsck imediato ao ser montado da seguinte forma:

Método 1: usando o / forcefsck

Normalmente, você pode agendar uma verificação na próxima reinicialização da seguinte forma:

$ sudo touch /forcefsck
$ sudo reboot

Método 2: usando o desligamento

Você também pode informar o comando shutdown para fazer isso também, por meio da opção -F :

$ sudo shutdown -rF now

NOTA: O primeiro método é a maneira mais universal de conseguir isso!

Método 3: usando o tune2fs

Você também pode usar tune2fs , que pode definir os parâmetros no próprio sistema de arquivos para forçar uma verificação na próxima vez que uma montagem for tentada.

$ sudo tune2fs -l /dev/sda1
Mount count: 3
Maximum mount count: 25

Portanto, você precisa colocar a "contagem de montagens" acima de 25 com o seguinte comando:

$ sudo tune2fs -C 26 /dev/sda1

Verifique o valor alterado com tune2fs -l e, em seguida, reinicie!

NOTA: Das 3 opções eu usaria tune2fs dado que ele pode lidar com a força ao verificar qualquer sistema de arquivos, seja ele do primário ( / ) ou algum outro.

Notas adicionais

Você normalmente verá os parâmetros "Número máximo de montagens" e "intervalo de verificação:" associados a uma partição formatada como ext2 / 3/4. Muitas vezes eles são configurados assim:

$ tune2fs -l /dev/sda5 | grep -E "Mount count|Maximum mount|interval"
Mount count:              178
Maximum mount count:      -1
Check interval:           0 (<none>)

Quando os parâmetros são definidos dessa forma, o dispositivo nunca executará fsck durante a montagem. Isso é bastante típico da maioria das distros.

Existem 2 forças que controlam um cheque. Qualquer número de montagens ou um tempo decorrido. O "Intervalo de verificação" é o intervalo baseado em tempo. Você pode dizer a cada 2 semanas para esse argumento, 2w. Veja a página tune2fs man para mais informações.

NOTA: Certifique-se também de que tune2fs é um comando do sistema de arquivos, não um comando do dispositivo. Portanto, não funciona com qualquer dispositivo antigo, /dev/sda , a menos que exista um sistema de arquivos ext2 / 3/4, o comando tune2fs não tem sentido, ele deve ser usado em uma partição formatada com um desses tipos de sistemas de filas.

Referências

por 01.10.2014 / 15:36
1

Recomenda-se executar uma fsck desmontar esta partição /dev/sdb2 se você não tiver nada importante montando nesse dispositivo , se isso não funcionar tente fazer um fsck com um live CD. / p>

$ sudo fsck /dev/sdb2
    
por 01.10.2014 / 15:41
0

Acredite que você está precisando executar um tipo de operação fsck. Você pode tentar executar fsck da seguinte forma:

$ sudo fsck /dev/sdb2
    
por 01.10.2014 / 15:12