Недавно я много читал о поддельных картах MicroSD и флэш-накопителях USB, которые утверждают, что имеют много места (даже если вы спрашиваете компьютер), но физически предлагают намного меньше. Я недавно купил USB-накопитель SanDisk (заявлено 128 ГБ) и хочу проверить его размер. Это не куплено через ebay или что-то, но я действительно хочу проверить реальный размер прежде, чем использовать это продуктивно.
Я мог бы просто скопировать материал на него, скопировать обратно и посмотреть, все ли в порядке. Я мог бы также автоматизировать это с помощью хэшей и прочего. Но я надеялся, что есть более точное решение. Я читал, что для Windows H2testw делает свое дело. Есть ли простой способ проверить это на Ubuntu / Linux? Может быть, специализированный, хорошо работающий инструмент?
Обновление: просто чтобы прояснить, идея состоит в том, чтобы проверить, что размер, который система Linux сообщает контроллеру, является правильным ( поэтому никакие данные не будут потеряны ). Я не хочу видеть, получу ли я 128 ГБ вместо 127,3 ГБ. Я хочу проверить, будут ли все записанные мной данные снова доступны для чтения. К сожалению, я могу найти только немного информации об этом на английских технических сайтах. Хотя есть хорошие немецкие источники. Я на самом деле ищу такое приложение, но для Ubuntu / Linux: https://www.raymond.cc/blog/test-and-detect-fake-or-counterfeit-usb-flash-drives-bought-from -ebay-с-H2testw /
Update2: я попытался собрать некоторые источники на английском языке. Я не прочитал все их подробно, из-за нехватки времени.
- https://www.ebay.com/gds/All-About-Fake-Flash-Drives-2013-/10000000177553258/g.html
- https://en.wikipedia.org/wiki/USB_flash_drive#Counterfeit_products
- https://www.heise.de/newsticker/meldung/Verdaechtige-USB-Sticks-mit-2-Terabyte-bei-Amazon-Faelschungen-entlarven-Datenverluste-vermeiden-3915202.html
- http://www.pcgameshardware.de/USB-Stick-Hardware-255579/News/falsche-Speicherkapazitaet-bei-Amazon-1245682/
Обновление 3: объяснения
Из-за странных критиков ниже, некоторые объяснения.
В чем проблема и почему один дд не решает ее?
Это реакция на
«Четко определите, какую проблему вы пытаетесь решить, и каково определение« фальшивого драйва »».
Кажется, что некоторые люди не понимают проблему. Поэтому я попытаюсь объяснить это как можно более кратко, хотя я думаю, что это во многом зависит от моего вопроса.
Емкость USB-устройств, которые предоставляет вам ваша операционная система или инструменты Unix, может быть неправильной. Это фатально, так как ваша ОС регулирует объем данных, которые вы можете отправить. Если вы отправите больше данных, чем сможете, вы потеряете данные. Это проблема. Итак, почему это может произойти?
Вам не нужно хорошо знать USB-протокол, чтобы понять проблему. Последовательные интерфейсы имеют общее свойство: клиентскому устройству (USB-накопителю) необходимо сообщать свою собственную емкость через этот последовательный интерфейс. Это означает, что клиентскому устройству нужен собственный контроллер с некоторыми знаниями о назначении устройств и, в данном случае, его емкости. Он также решает, что сделано, когда получает команду на сохранение чего-либо. Если контроллер запрограммирован таким образом, он может просто игнорировать команду или что-то перезаписать данными.
Что это значит? Что бы ни говорили ваши инструменты Unix о емкости диска: это то, о чем инструменты спрашивали у диска, и больше ничего. Вот для чего был изобретен h2testw: он проверяет реальный размер с помощью метода, описанного ниже, и сравнивает его с тем, что говорит накопитель. Если это не то же самое, у вас может быть потеря данных, потому что все ваши общие операции по хранению данных зависят от информации вашей операционной системы, которая просто запрашивает контроллер. Почему просто спросить? Тестирование требует времени и перезаписывает все данные на диске. Поэтому естественно, что операционная система должна полагаться на эту информацию.
Чтобы проверить реальную емкость, такую как h2testw, вы действительно можете использовать dd
для записи данных на диск, чтения его еще раз и проверки того , что вы написали то же самое. Совершенно законно. Характер аппаратного обеспечения и привода делают его более сложным. Рассмотрим кеши для записи, например. Вы должны убедиться, что вы не читаете из кэша. Это только один пример того, почему это не так просто, как кажется. Также подумайте, что просто запись нулей означает низкую энтропию информации, которую можно восстановить при чтении. Это просто не так просто в деталях. Вы все еще можете сделать это вручную, конечно.
Но почему, когда вы можете автоматизировать вещи? Зачем работать? f3, как предложено в моем ответе ниже, реализует тонны мыслей многих участников (считают, что это своего рода расширенный h2testw), а также реализует несколько методов с различными компромиссами. Разработчик выяснил хитрости различных фальшивых дисков (подделок), которые они имели под рукой . Поэтому, хотя я понимаю теорию и проблему (по-видимому, поскольку проблемы хорошо объясняются в немецких технических СМИ, но не в англоязычных СМИ), я не претендую на то, что понимаю все, поэтому я упомянул об этом выше. Это просто теория, которую я понимаю, и я скорее программист. Но как студент, изучающий информатику, я понимаю это достаточно хорошо, чтобы увидеть проблему.
«Попытайтесь понять основные утилиты Unix»
На самом деле я уже ответил на этот вопрос, но чтобы прояснить: инструменты Unix просто используют USB-протокол (конечно, только для USB-устройств) для сбора информации. Нет смысла делать больше, чем это.
Помогает ли покупать только у поставщиков трестов?
tl; dr: это не так.
«Когда речь заходит о покупке товаров, как и о любой форме безопасности, подумайте о том, чтобы найти надежного продавца и покупать диски только у них».
Безопасность (и безопасность) не о доверии! Речь идет о проверке и валидации! Извините, но это так неправильно во многих отношениях.
Предположим, вы покупаете через доверенного продавца. Несколько вопросов:
Проверил ли поставщик оборудование, чтобы убедиться в отсутствии потери данных? Узнает ли он, когда он покупает поддельные диски и продает их? Не обязательно.
Возможно ли, что он покупает вещи, которые он не знает, подделка? В общем, посмотрите на недавние подделки рызенов: https://www.pcgamer.com/beware-of-fake-ryzen-processors-selling-on-amazon/ , https://www.heise.de/newsticker/meldung/ Директ-фон-Амазонка-Faelschungen-фон-AMDs-Ryzen-Prozessoren-им-Umlauf-3772757.html
Если я потеряю свою презентацию в дисководе и испорчу презентацию, вернется ли мой проверенный поставщик вовремя и спасет меня? Это, вероятно, заменит двигатель, так как последний путешествующий во времени DeLorean был разрушен в 1885 году.
Другие вещи
«Этот вопрос действительно больше похож на« промо »в том, что нравится OP, и кажется, что OP гораздо меньше заинтересован в реальном тестировании накопителей».
Это смешно. Я искал специально подобный инструмент для h2testw, который также работает на Linux. И да, это то, что я "хотел бы", полезный ответ, извините. Я понятия не имел, что англоязычная пресса не слишком осведомлена о таких проблемах, и мне посчастливилось найти что-то подобное позже. Это не промо, но на самом деле вы можете использовать его.
df --block-size=M
. Ограничение в 4 ГБ предполагает, что это просто ограничение размера файла FAT32, а не емкость диска. Вы никогда не получите полную заявленную мощность, это просто среднее значение для классификации.