Je dis à fsck de réparer la clé USB, il dit "Laisser le système de fichiers inchangé."

25

Donc je lance fsck, et ça rapporte

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

Choisir l'un ou l'autre donne une longue liste d'erreurs comme

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.

Ensuite, il dit:

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

Si je choisis (1), il se termine sans aucune action:

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

Alors, comment puis-je résoudre ce problème?

Scott C Wilson
la source

Réponses:

23

Après avoir démonté le volume USB, vous voudrez utiliser fsck avec le commutateur '-w' qui force fsck à écrire immédiatement les modifications. Notez que «-w» nécessite «-a» (mode automatique) ou «-r» (mode interactif).


la source
L' -woption me manque vraiment ! +1
gavenkoa
9

l'homme fsck.vfat dit:

Remarque: Si -a et -r sont absents, le système de fichiers est seulement vérifié, mais pas réparé.

Donc, pour qu'il écrive réellement vos modifications, utilisez -a ou -r. L'option -w modifie le comportement de ces deux.

Gilead
la source
7

Regardez la page de manuel fsck. Essayez peut-être l'option -r ou laissez l'option -n si vous l'avez utilisée.

Une autre possibilité est que la partition soit complètement pleine. Vérifiez ça.

Soit dit en passant, il serait très utile de publier exactement la commande que vous avez utilisée.

jfreax
la source
0

J'ai eu le même problème. J'ai finalement réussi à le faire fonctionner en utilisant directement la commande dosfsck plutôt qu'en utilisant fsck (qui n'est qu'un wrapper pour tous les différents outils fsck). Je suppose que lorsque fsck appelle dosfsck, il ajoute des options qui ne fonctionnent pas correctement.

user258400
la source
0

J'ai eu le même problème, inspiré de la réponse de user258400 que j'ai utilisé directement:

fsck.fat -r /dev/sde1

au lieu de:

fsck -r /dev/sde1

qui a fait l'affaire

Marco Kinski
la source
0

En plus de passer -w -r comme l'a dit user130302, j'ai dû exécuter fsck.vfat avec la partition montée pour que fsck puisse écrire les clusters trouvés (dans les fichiers FSCK000n.REC).

David Faure
la source