Mówię fsck, aby naprawił pamięć USB, mówi „Pozostawienie systemu plików bez zmian”.

25

Więc uruchamiam fsck i raportuje

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

Wybór jednego z nich daje długą listę błędów takich jak

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.

Potem mówi:

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

Jeśli wybiorę (1), po prostu wyjdzie bez żadnej akcji:

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

Jak to naprawić?

Scott C. Wilson
źródło

Odpowiedzi:

23

Po odmontowaniu woluminu USB, będziesz chciał użyć fsck z przełącznikiem -w, który zmusza fsck do natychmiastowego zapisywania zmian. Zauważ, że „-w” wymaga „-a” (tryb automatyczny) lub „-r” (tryb interaktywny).


źródło
Naprawdę tęsknię za -wopcją! +1
gavenkoa
9

man fsck.vfat mówi:

Uwaga: Jeśli nie ma opcji -a i -r, system plików jest sprawdzany, ale nie naprawiany.

Tak więc, aby napisać zmiany, użyj albo -a albo -r. Opcja -w modyfikuje zachowanie tych dwóch.

Gilead
źródło
7

Spójrz na stronę manuala fsck. Może wypróbuj opcję -r lub pozostaw opcję -n, jeśli z niej korzystałeś.

Inną możliwością jest to, że partycja jest całkowicie zapełniona. Sprawdź to.

Nawiasem mówiąc, bardzo pomocne byłoby opublikowanie dokładnie tego polecenia, którego użyłeś.

jfreax
źródło
0

Miałem ten sam problem. W końcu udało mi się go uruchomić, używając bezpośrednio polecenia dosfsck zamiast fsck (który jest tylko opakowaniem dla wszystkich różnych narzędzi fsck). Wydaje mi się, że kiedy fsck wywołuje dosfsck, dodaje kilka opcji, które powodują, że nie działa poprawnie.

użytkownik258400
źródło
0

Miałem ten sam problem, zainspirowany odpowiedzią user258400, której użyłem bezpośrednio:

fsck.fat -r /dev/sde1

zamiast:

fsck -r /dev/sde1

co załatwiło sprawę

Marco Kinski
źródło
0

Oprócz przekazania -w -r, jak powiedział użytkownik 130302, musiałem uruchomić fsck.vfat z zamontowaną partycją , aby fsck mógł zapisać znalezione klastry (w plikach FSCK000n.REC).

David Faure
źródło