LINUX.ORG.RU

Маркировка «плохих» секторов в флэшке, возможно на уровне ФС

 , ,


0

3

Бродя по М-Видии, наткнулся на 128 Гб флэшку по дешману. Флэшка работает, но периодически скорость падает ОЧЕНЬ сильно - настолько, что даже потоковое видео без кэширования не воспроизводится (а это уже скорость чтения).

Прочитал, что есть некие фирмарные утилиты, маркирующие плохие блоки, но в моём случае они ничего не определяют. Тогда, можно ли сделать игнор медленных блоков на уровне файловой системы (интересуют виндовые типа exfat/fat32 и линуксоидные)? Также читал, что есть Victoria, но похожего опыта не было, и она под оффтопиком.

Тогда, можно ли сделать игнор медленных блоков на уровне файловой системы

Там нечего игнорить: или она работает, или сдохла.

Флешки – это ещё больший расходник, чем харды. У флешек и контроллер тупее, и компоненты дешевле.

Clockwork ★★★★★
()
Последнее исправление: Clockwork (всего исправлений: 1)

Можешь написать скрипт, который читает флешку по одному блоку, замеряет скорость чтения и на выход дает файл где номер блока и скорость его чтения. Далее, определяешь максимальное время чтения блока и все блоки которые читаются слишком медленно — заносятся в отдельный файл в формате badblocks. Далее при создании файловой системе указываешь этот файл с списком блоков которые нужно «обходить».

Нужно ли тебе с этим всем заморачиваться? Как написали выше, проще купить новую.

iron ★★★★★
()
Ответ на: комментарий от Clockwork

Там нечего игнорить: или она работает, или сдохла.

Есть утилиты от производителя (у меня под виндовой утилитой показывало phison) как раз с функцией игнора блоков (в том числе).

Наверняка какой-то процент плохих блоков - распространённая вещь, но если сама ФС в состоянии разобраться, то прикольно.

DanilaZabiakaa
() автор топика
Ответ на: комментарий от iron

Как написали выше, проще купить новую.

Пшш мы же цивилизованные ответственные люди. Правильнее советовать «Обратиться по гарантии». Флэшка и так новая…

Можешь написать скрипт, который читает флешку по одному блоку, замеряет скорость чтения и на выход дает файл где номер блока и скорость его чтения.

В инете видел похожие инструкции, хотя ещё встречал, что где какой блок решает контроллер флэшки (защита от частой перезаписи).

Поставил кэш на 30 метров и воспроизведение норм.

DanilaZabiakaa
() автор топика
Ответ на: комментарий от DanilaZabiakaa

В инете видел похожие инструкции, хотя ещё встречал, что где какой блок решает контроллер флэшки (защита от частой перезаписи).

Если контроллер решает где какой номер блока, откуда он знает пустой ли блок или нет? Ведь данные не обнуляются а лишь блок помечается как свободный. Что-то мне не верится в эту фантастику. В случае с SSD — верится. А вот с флешкой — нет.

iron ★★★★★
()
Ответ на: комментарий от DanilaZabiakaa

Есть утилиты от производителя как раз с функцией игнора блоков (в том числе).

И эти утилиты от производителя сделаны для флешек того производителя?

но если сама ФС в состоянии разобраться, то прикольно.

Такая ФС либо убьёт флешку, либо сделает только хуже.

Clockwork ★★★★★
()
Последнее исправление: Clockwork (всего исправлений: 1)
Ответ на: комментарий от Dimez

Это, видимо, перегрев. Флешка (физически) мелкая?

Шо такое с пятизвёздочниками? Флэшка в 2 фаланги мизинца, но даже навскидку, микросд терабайтные хорошо поживают на UHS скоростях, а тут просто на чтении без особого кэша тормозяки.

В статье от 2009 говорилось, что прогонишь Low Level Disk Format и зависшие блоки убираются, морщины разглаживаются, хотя как помню, эта утилита всё-таки создаёт файловую систему.

Может что-то в ФС вносится, или контроллер маркирует, или хз. Но мне ещё линуксовый раздел нужен.

DanilaZabiakaa
() автор топика
Последнее исправление: DanilaZabiakaa (всего исправлений: 2)

есть некие фирмарные утилиты, маркирующие плохие блоки

Когда-то пробовал запускать реформаттер для флешек. На 32-гиговой флешке оно мне предложило подождать сутки для завершения операции. И я ещё не уверен, что после этого не будут какие-нибудь ещё стадии. Так что на медленной 128-гиговой можешь приготовиться ждать недели.

Тогда, можно ли сделать игнор медленных блоков на уровне файловой системы (интересуют виндовые типа exfat/fat32 и линуксоидные)?

mkfs.fat умеет читать список плохих блоков из внешнего файла при создании ФС. Про exfat даже не знаю, есть ли там вообще возможность маркировать плохие блоки.

i-rinat ★★★★★
()
Ответ на: комментарий от DanilaZabiakaa

В статье от 2009 говорилось, что прогонишь Low Level Disk Format и зависшие блоки убираются, морщины разглаживаются, хотя как помню, эта утилита всё-таки создаёт файловую систему.

Так это в последний раз работало в 2009 году. Да, есть у меня такая флешка. И утилита такая есть. А толку-то. После восстановления хватает один раз файлы с компа на комп перенести. Потом опять не читается. Совсем.

tiinn ★★★★★
()

А если забить всю флешку нулями (ну или сделать blkdiscard или secure erase), сделать один раздел на половину объема, контроллер не догадается использовать по возможности лучшие ячейки?

Хотя если подумать, вряд ли. Но пусть останется, настучал же.

greenman ★★★★★
()
Ответ на: комментарий от tiinn

В принципе, флэшка рабочая, для неспешного хранения подойдёт. Ну и «новая». 2 гб за несколько минут записались.

Особо флэшками не пользуюсь, естьжиинтернет, но чисто по приколу любопытно. Много лет назад смотрел витрины в цифровом магазины, и один парень про флэшку говорил «прикинь, целый ГИГАБАЙТ в кармане». Спустя сколько-то лет в году 2010 купил 8-гб Kingston рублей за 800-900.

Тут сходил в мвидию, и взял аж 128 ГИГАБАЙТ за 699р.

Вау, технический прогресс. Но он каким-то глючным бывает, падение скорости прям до нуля не встречал.

DanilaZabiakaa
() автор топика
Ответ на: комментарий от timdorohin

Зависоны в одних и тех же местах, но это хреново -_-. Типа Mirex - РОССИЙСКАЯ компания, поддержисвоих и тд, но периодическая 0 скорость на чтение с нового накопителя - это уже перебор. В среднем 7 мб/сек записи держит, не суперские microsd карты, и даже не class 10.

Можно и чинилку-ремаппер было выпустить, чтоб по гарантии не обращаться.

DanilaZabiakaa
() автор топика

Речь про USB-флешку? Почти все сервисные утилиты под контроллер флешки сами умеют находить бэд-блоки и ремаппить их, см. сервисные документации

ValdikSS ★★★★★
()

Из-за wear levelling ты не можешь сказать ей какие блоки использовать, а какие нет, она будет пытаться использовать все, чтобы распределить нагрузку.

slowpony ★★★★★
()