Флэш-накопитель USB показывает меньшую емкость гигабайта (без раздела)

787
papajo

Итак, моя проблема в том, что у меня был флэш-накопитель Jetflash USB 32 ГБ, который имел 32 000 000 000 байт, или, другими словами, его емкость составляла 29,8 ГБ. Раньше я мог щелкать правой кнопкой мыши по окнам и видеть число 29,8.

Теперь я сделал загрузочный USB через Linux, чтобы установить Manjaro на чей-то компьютер. Я не могу вспомнить, что именно я тогда делал на флешке. Короче говоря, когда я отформатировал USB на своем компьютере (что произошло через несколько недель после вышеупомянутого инцидента), моя флешка теперь имеет 28 ГБ дискового пространства.

Так я потерял почти 2 ГиБ! Я не вижу ни разделов, ни нераспределенного пространства с помощью какого-либо инструмента Windows или gpartedLinux.

Существует ли какой-либо инструмент низкого уровня, который может удалить любые mbr / lba или любые другие данные флага и проверить мои секторы один за другим, чтобы определить мою первоначальную емкость?

Я не нашел ничего в Интернете. Все темы, относящиеся к теме «моя ручка USB показывает меньше ГБ», предназначены для решения проблем, когда обнаружился меньший раздел, а оставшееся пространство было просто нераспределенным, но «видимым» для DiskManager, PartitionManager и gpartedт. Д., Что не в моем случае.

1
Вы можете использовать MKUSB> Восстановить на стандартном устройстве хранения данных (только Debian / Ubuntu и его производные). Если он все еще показывает то же самое, то возможно, что некоторые сектора были признаны плохими и помечены как «не для использования» в одном из форматов. 6 лет назад 0
Что сейчас показывает gparted? Может быть, Windows просто игнорирует любые дополнительные разделы, но gparted не должен ... Существуют проприетарные программы для «перепрошивки» флэш-памяти (USB-накопители, SD-карты и т. Д.), Они часто используются мошенниками для продажи маленькая (8-32 ГБ) карта, которая выглядит и ведет себя как намного большая карта (128-256 ГБ), но попытка записи на всю карту обнаружит подделку. В последний раз я читал программы были на китайском ... Xen2050 6 лет назад 0
@MichaelBay Я попробую этот mk USB и вернусь к вам, но я не думаю, что он будет делать что-то отличное от правого клика> формата в Windows, но мне нечего терять, связывая его тоже. papajo 6 лет назад 0

1 ответ на вопрос

1
Xen2050

Я использовал ddинструмент -inpired, например mkusb, на флэш-накопителе, например, на странице справки mkusb Ubuntu говорится, что они:

«использовать все устройство», фактически только головную часть (размер iso-файла), но остальная часть устройства недоступна. mkusb просто клонирует файловую систему ISO 9660 с ее содержимым из iso-файла. Эта файловая система ISO 9660 работает с CD / DVD-дисков, а также с USB-накопителей. После такого USB-подключения вы создадите новую таблицу разделов и файловую систему, если хотите использовать ее для других целей.

Вниз по цепочке ссылок ведет к справке по форматированию USB-накопителя . Создание новой таблицы разделов, а затем раздел (ы) должны делать свое дело, если только вы не столкнетесь с «особыми случаями» проблемного флэш-устройства. Тот, который я просто не слушал, и иногда собирал остатки старой файловой системы ISO через месяцы после ее форматирования и повторного использования.

Перезапись первого гигабайта (там, где изначально был ISO) решила мою проблему, но если вы хотите перезаписать весь USB, который тоже должен работать (за счет меньшего времени жизни, записывающего во флэш-память), или предполагается только первый мегабайт работать тоже ...

Использование плана ddиз Linux должно сделать это. Сначала убедитесь на 100%, что у вас есть правильное устройство (например /dev/sdx, при использовании lsblkили gpartedили gnome-disk-utilityили просмотре dmesg/ системном журнале, когда устройство подключается к устройству).

  • Чтобы перезаписать только первый мегабайт (1M, где M = 1024 * 1024), вы должны сделать

    dd if=/dev/zero of=/dev/sdx bs=1M count=1 

    Чтобы перезаписать больше М, используйте большее количество.

  • Для перезаписи первого гигабайта (1G, где G = 1024 * 1024 * 1024) выполните

    dd if=/dev/zero of=/dev/sdx bs=1G count=1 
  • Чтобы перезаписать все устройство, не используйте bs или count, просто

    dd if=/dev/zero of=/dev/sdx 

    Когда он закончится, ddон сообщит вам, сколько он смог записать, прежде чем дойдет до конца устройства, и даст вам представление о том, сколько действительно можно записать, примерно так:

    1+0 records in 1+0 records out 1048576 bytes (1.0 MB) copied, 0.000838339 s, 1.3 GB/s 

Если ddэто занимает много времени, вы можете «отправить сигнал USR1 запущенному процессу 'dd', чтобы он распечатал статистику ввода-вывода со стандартной ошибкой, а затем возобновил копирование». Используйте killи, pgrepили, ps pkillили, htopможет быть, даже killallесли вы осторожны, или посмотрите man ddпример:

$ dd if=/dev/zero of=/dev/null& pid=$! $ kill -USR1 $pid; sleep 1; kill $pid  18335302+0 records in 18335302+0 records out 9387674624 bytes (9.4 GB) copied, 34.6279 seconds, 271 MB/s 

Когда ddзакончите, напишите новую таблицу разделов, создайте новый раздел и отформатируйте его. Я бы использовал gparted, у него есть опция создания таблицы разделов в меню, и она обычно работает хорошо.

bs = 1M будет просто создавать блоки размером 1 МБ, а не запись из первого сектора, и если я использую bs = 1G, он будет записывать блоки размером 1 ГБ, что сделает мой USB-накопитель очень медленным для копирования файлов менее 1 ГБ (что обычно) Вы уверены, что? papajo 6 лет назад 0
Эти «блоки» - это то, что использует `dd`, оно не меняет устройство, а просто записывает в него куски такого размера. Если вы не используете другие флаги, такие как `seek =` или `skip =`, тогда dd должен начать чтение и запись в начале каждого устройства. Вы можете думать о размере сектора устройства / накопителя, я уверен, что вы не можете это изменить - `dd` определенно не может Xen2050 6 лет назад 0
Серьезно, используйте `wipefs`, если вы не решитесь сделать * полный * обнуление. Произвольный частичный обнуление имеет мало смысла. Также он не стирает резервную копию GPT. Tom Yan 6 лет назад 0
@TomYan Как показывают многочисленные ссылки на справочные страницы, даже один gparted должен работать с * нормальным * диском, но это особый случай / проблемный диск. И где хранится резервный GPT, где перезапись каждого сектора диска не может его коснуться? Если он находится на диске и доступен для записи, то dd перезапишет его. Xen2050 6 лет назад 0