лікування проблемної флешки в linux

| комп'ютери, linux, підказки, нетбук

для того, щоби вісім гігабайт ssd в моєму acer aspire one не навівали тугу, колись придбав карту пам’яті на 8 гб і постійно тримаю її в лівому карт-рідері. саме тут зберігаються документи, електронні книжки, скріншоти, трохи улюбленої музики та два чи три фільми. ssd — для системи та користувацьких налаштувань.

аж ось днями зустрівся з дивною проблемою: флешка монтується і відкривається нормально, але відкрив у програвачі «вбивцю боба» — і не зміг після цього зберегти файл на картку. послідовність повторювалася раз у раз, так що я став підозрювати саме програвач gnome mplayer в якихось дивних глюках…

попри непевні симптоми, все-таки кільканадцять хвилин інтенсивного пошуку в тенетах направили на вірний слід: виявляється, якщо виникають проблеми зі зчитуванням файлів, система миттю перемонтовує флешку в режимі лише читання.

перевіряю: перемонтовую флешку (достатньо витягти й знову встромити в карт-рідер) для чистоти ексерименту, знову відкриваю файл видива, щоби спровокувати помилку... і в терміналі перевіряю повідомлення ядра (достатньо останніх 30-50 рядків):
dmesg | tail -50
справді: серія підозрілих повідомлень свідчить про помилку файлової системи на флешці (див. скріншот збільшено).
fat: filesystem error (dev mmcblk1p1)
отакої. доведеться лікувати. відмонтовую флешку (правий клік на зображенні флешки на стільниці, або через файл-менеджер, або через аплет місць на системній панелі…), а тоді знову в терміналі:
sudo fsck -a /dev/mmcblk1p1
назва пристрою вказана в повідомленні про помилку (вище). fsck в автоматичному режимі (ключик -a) виправив усі помилки, за винятком однієї: робоча і архівна копії таблиці розташування файлів (fat) відрізняються. доводиться втрутитися:
sudo fsck -r /dev/mmcblk1p1
тепер fsck запитує, яку копію використовувати надалі. по суті байдуже: все-одно проблемний файл це не порятує.

після цього знову монтую флешку. як і слід було чекати, файл «вбивця біб» тепер має розмір не 800 з гаком мегабайт, а лише 60… видаляю його — доведеться знову завантажити з nas'а. а флешка знову працює нормально.