Я только что купил новую CF-карту для моей DSLR. Я протестировал его с помощью Xbench (Mac OS X), и он работает как положено. Тем не менее, я хотел бы сделать «сканирование поверхности» (термин «подвижный диск»), чтобы проверить наличие «плохих секторов» (термин «подвижный диск»). Я мог бы написать сценарий процессов, используя dd, но у меня есть ощущение, что есть лучший выход. Моя цель - окончательно узнать, что карта памяти (CF, SD и т. Д.) Безопасна для использования во время фотосессии, и ее не нужно возвращать до истечения 30-дневного окна политики поставщика.
Я определенно хочу, чтобы решения для Mac давались здесь. Я также хотел бы получить несколько предложений по Linux. Давайте даже бросим кость пользователям Windows, чтобы этот вопрос мог удовлетворить потребности каждого.
источник
Ответы:
Поскольку контроллер может перемещать блоки туда, куда он хочет (см. Выравнивание износа), единственный шанс для всего теста чтения / записи - заполнить диск и затем сравнить. Несколько раз с разными узорами конечно, чтобы быть уверенным.
И все же вы не поймете неисправные регионы, так как они также скрыты контроллером, если у него есть запасные части.
источник
Флэш-память не работает так же, как диски с пластинами. Понятие «плохой сектор» на самом деле не существует с флэш-памятью. В наши дни, благодаря флэш-памяти и твердотельным накопителям, встроенный контроллер заботится об идентификации и выделении неиспользуемых блоков памяти, динамическом перемещении данных, чтобы уменьшить ограничения на запись блоков и т. Д. Эти функции гораздо более распространены в твердотельных накопителях, но некоторые также существуют качественные флешки (такие как SanDisk).
Большинство инструментов проверки файловой системы либо делают конкретные предположения о физической структуре устройства хранения (т.е. основанные на пластинах, с физическими цилиндрами, секторами, кластерами и т. Д.), Либо работают на абстрактном уровне и производят ремонт «виртуально», используя файл или каталог столы. Вам понадобится инструмент, специально предназначенный для маркировки поврежденных блоков на устройстве флэш-памяти, поскольку все остальное либо вызовет больше проблем (если предположить, что оно может решить проблемы так же, как с устройством на основе диска), либо создаст виртуальный исправления, не учитывающие динамические аппаратные функции флэш-памяти. Даже если бы вы могли пометить определенный «сектор» или «кластер» как «плохой», это не обязательно принесет пользу, так как эти физические понятия фактически не существуют во флэш-памяти. Если флэш-устройство является более продвинутым и динамически перемещает данные, чтобы автоматически обходить поврежденные блоки и смягчать ограничения на запись, физическое расположение данных может находиться в плохом блоке в одно мгновение, а в хорошем - мгновение спустя. (Обратите внимание, что идея «плохого» блока во флэш-памяти гораздо более размыта, чем с дисководами… блок флэш-памяти имеет тенденцию умирать медленно, а не внезапно, и может «мерцать» между читаемым / не читаемым немного, прежде чем он станет совершенно непригодным для использования.)
Вообще говоря, когда дело доходит до вспышки, пусть устройство управляет собой с точки зрения плохих блоков. Разные производители структурируют и хранят данные по-разному, и каждый из них может иметь разные уровни и объемы динамического поведения, которое перемещает данные, чтобы избежать некоторых ограничений флэш-памяти. Попытка управлять им самостоятельно, скорее всего, вызовет больше проблем, чем решит, и может сделать ваши флэш-диски бесполезными в долгосрочной перспективе.
Если вы хотите избежать плохих карт памяти, я настоятельно рекомендую использовать авторитетные бренды. В прошлом я пробовал разные флеш-карты, однако SanDisk - это единственный бренд, который я использовал, и который, по крайней мере на сегодняшний день, никогда не подводил. У меня есть несколько SDHC-карт емкостью 4, 8 и 16 гигабайт, которые я использую довольно интенсивно, и регулярно вынимаю их из камеры и вставляю в ноутбук или компьютер, и они все еще работают отлично. (Некоторым несколько лет.)
источник
В Linux вам нужна команда
badblocks
. Кажется, есть порт этого для Mac OS X как часть этого порта ext2-for-os-x - установите все это и проигнорируйте все, кроме/usr/local/sbin/badblocks
команды.Тем не менее, это поможет протестировать, но я не думаю, что оно будет окончательным, потому что, во-первых, как говорит Леонидас, у вас нет непосредственного доступа к флэш-памяти, поэтому трудно выполнить полное сканирование, а также потому, что новые сбои могут появиться после теста, возможно, даже вызванного им.
источник
Читая ваш комментарий ниже вопроса, я считаю, что F3 делает именно то, что вы хотите. Он компилируется в Linux / Mac OS X, а также доступен через Homebrew.
источник
Я нашел это в Google, я не использую SD-карты для хранения камер, но вместо этого я получил полностью поврежденный sdhc sandisk класса 10 32 гига после менее чем двухлетнего использования на моей Samsung Galaxy S2.
Я использую badblocks, чтобы увидеть, где начинаются первые badblocks, а затем я сделаю разделы вокруг этой области, если это возможно. это мое текущее, очень и очень плохое решение: /
источник