Le digo a fsck que arregle la memoria USB, dice "Dejar el sistema de archivos sin cambios".

25

Entonces ejecuto fsck, e informa

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

Elegir cualquiera da una larga lista de errores 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.

Entonces dice:

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

Si elijo (1), simplemente sale sin ninguna acción:

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

Entonces, ¿cómo soluciono esto?

Scott C Wilson
fuente

Respuestas:

23

Después de desmontar el volumen USB, querrá usar fsck con el interruptor '-w' que obliga a fsck a escribir los cambios inmediatamente. Tenga en cuenta que '-w' requiere '-a' (modo automático) o '-r' (modo interactivo).


fuente
Realmente extraño la -wopción! +1
gavenkoa
9

man fsck.vfat dice:

Nota: Si -a y -r están ausentes, el sistema de archivos solo se verifica, pero no se repara.

Entonces, para que realmente escriba sus cambios, use -a o -r. La opción -w modifica el comportamiento de esos dos.

Galaad
fuente
7

Mira la página de manual de fsck. Quizás pruebe la opción -r o deje la -n si la usó.

Otra posibilidad es que la partición esté completamente llena. Mira esto.

Por cierto, sería muy útil publicar exactamente el comando que utilizó.

jfreax
fuente
0

Tuve el mismo problema. Finalmente conseguí que funcionara simplemente usando el comando dosfsck directamente en lugar de usar fsck (que es solo un contenedor para todas las diversas herramientas de fsck). Supongo que cuando fsck llama a dosfsck, agrega algunas opciones que hacen que no funcione correctamente.

usuario258400
fuente
0

Tuve el mismo problema, inspirado en la respuesta del usuario 258400 que utilicé directamente:

fsck.fat -r /dev/sde1

en lugar de:

fsck -r /dev/sde1

cual hizo el truco

Marco Kinski
fuente
0

Además de pasar -w -r como dijo user130302, tuve que ejecutar fsck.vfat con la partición montada para que fsck pudiera escribir los clústeres encontrados (en archivos FSCK000n.REC).

David Faure
fuente