Eu digo ao fsck para consertar o pendrive, ele diz "Deixando o sistema de arquivos inalterado".

25

Então eu corro fsck, e ele relata

FATs differ but appear to be intact. Use which FAT ?
1) Use first FAT
2) Use second FAT

A escolha de uma delas fornece uma longa lista de erros como

Cluster 1471730 out of range (164977891 > 1980013). Setting to EOF.
Cluster 1471732 out of range (252397720 > 1980013). Setting to EOF.
Cluster 1471734 out of range (18601458 > 1980013). Setting to EOF.

Então diz:

Reclaimed 93886 unused clusters (769114112 bytes).
Free cluster summary wrong (1034047 vs. really 1221912)
1) Correct
2) Don't correct

Se eu escolher (1), ele será encerrado sem nenhuma ação:

Leaving file system unchanged.
/dev/sdb1: 53 files, 758100/1980012 clusters

Então, como faço para corrigir isso?

Scott C Wilson
fonte

Respostas:

23

Após desmontar o volume USB, convém usar o fsck com a opção '-w' que força o fsck a gravar as alterações imediatamente. Observe que '-w' requer '-a' (modo automático) ou '-r' (modo interativo).


fonte
Eu realmente sinto falta da -wopção! 1
gavenkoa
9

man fsck.vfat diz:

Nota: Se -a e -r estiverem ausentes, o sistema de arquivos será verificado apenas, mas não será reparado.

Portanto, para que ele realmente escreva suas alterações, use -a ou -r. A opção -w modifica o comportamento desses dois.

Gilead
fonte
7

Veja a página de manual do fsck. Talvez tente a opção -r ou deixe -n se você a usou.

Outra possibilidade é que a partição esteja completamente cheia. Verifique isso.

A propósito, seria muito útil postar exatamente o comando que você usou.

jfreax
fonte
0

Eu tive o mesmo problema. Acabei conseguindo que funcionasse apenas usando o comando dosfsck diretamente, em vez de usar o fsck (que é apenas um invólucro para todas as várias ferramentas do fsck). Eu acho que quando o fsck chama o dosfsck, ele adiciona algumas opções que fazem com que ele não funcione corretamente.

user258400
fonte
0

Eu tive o mesmo problema, inspirado na resposta do user258400 que usei diretamente:

fsck.fat -r /dev/sde1

ao invés de:

fsck -r /dev/sde1

qual foi o truque

Marco Kinski
fonte
0

Além de passar -w -r como o user130302 disse, eu tive que executar o fsck.vfat com a partição montada para que o fsck pudesse gravar os clusters encontrados (nos arquivos FSCK000n.REC).

David Faure
fonte