O tym, jak Złego Sektora diabli wzięli
Ponieważ w przypadku rekonstrukcji powierzchni nośnej pendrive’a nie możemy, jak w przypadku dysku twardego, polegać na danych S.M.A.R.T. i Disk Utility, musimy podejść do zagadnienia w nieco inny sposób. Stara prawda mówi, że rozwiązania najprostsze są najlepsze. Dlatego nie będziemy posiłkowali się narzędziami o wysublimowanym interfejsie graficznym, lecz sięgniemy do siermiężnej, acz skutecznej wiedzy nt. poleceń tekstowych. Pomimo, że wiele osób obrzydzeniem napawa wypisywanie dziwnych i niewiele mówiących zbiorów literek (jak nazwać zatem odprężające sesje na GG?), to sprawność użycia polecenia o konkretnej nazwie i dodanie do niego paru parametrów (nawet w oparciu o manuale dostępne w sieci) powinno być traktowane jak sztuka przetrwania. Nigdy nie wiadomo, kiedy przyjdzie jej nam użyć, ale lepiej ją znać.
Jak w związku z tym pozbyć się natrętnych bad sectorów? Otóż… Za pomocą polecenia fsck lub mkfs. Obecne w każdej dystrybucji narzędzia do sprawdzania systemu plików na okoliczność ‘miękkich’ błędów (fsck) oraz tworzące na wybranej partycji wybrany system plików, zostały sprzęgnięte z innym poleceniem badblocks. A wynikiem jest proste i wygodne oznaczanie i wykluczanie z użytku zepsutych rejonów nośnika. Najpierw zastanawiamy się, czy chcemy sformatować partycję na wybrany system plików (mkfs), co oczywiście doprowadzi do utraty z niej wszelkich danych (polecenie mkfs), czy może pozostawić jej zawartość (polecenie fsck) a tylko wyodrębnić błędne bloki.
Po podłączeniu pendrive’a, za pomocą polecenia…
sudo fdisk -l
… namierzamy naszą partycję na nośniku wymiennym (istotny krok!).
Następnie musimy ją odmontować, by przeprowadzać jakiekolwiek działania:
sudo umount /dev/sdX
Jeżeli chcemy ją sformatować, z jednoczesnym zaznaczeniem złych sektorów, wykonujemy:
sudo mkfs.ext4 -cc -v /dev/sdX
Mkfs.ext4 oznacza, że na partycji pojawi się system plików ext4 (można użyć dowolnego, obsługiwanego). Parametry -cc przeprowadzą skrupulatne (samo -c będzie mniej skrupulatne – tylko test odczytu) testowanie nośnika i zaznaczenie/wykluczenie ew. uszkodzonych obszarów. Dzięki parametrowi -v nie będziemy się nudzili i będziemy mieli podgląd na postęp prac.
Jeżeli jednak chcemy tylko przeskanować nośnik, to używamy (ext4 zamieniamy na system plików, jaki jest na tej partycji):
sudo fsck.ext4 -cc -fC0 /dev/sdX
W przeciwieństwie do pierwszego przykładu, dane z nośnika nie zostaną usunięte, poza ew. problemami z plikami zajętymi przez złe sektory.
Dla zaawansowanych powyższe wygląda może i śmiesznie, ale śmieszno-gorzki jest fakt, że wiele osób używa systemu, nie zdając sobie sprawy, jakimi narzędziami dysponuje. A tak zregenerowane pendrive’y mogą jeszcze trochę posłużyć.