Плохое сжатие изображения Compact Flash, даже после нулевого заполнения

Плохое сжатие изображения Compact Flash, даже после нулевого заполнения

Проблема:Я пытаюсь создать точный образ компактной флэш-памяти, а затем сжать образ компактной флэш-памяти для более удобного хранения. Компактная флэш-память не заполнена (использовано ~1,5 ГБ, размер 32 ГБ). Проблема в том, что когда я сжимаю извлеченное изображение, оно сжимается не очень хорошо, и я не уверен, почему.

Я пробовал несколько методов сжатия, и все они давали не более 50% сжатия. Я бы предположил, что нули, заполняющие ~30 ГБ CF, сожмутся очень хорошо, и итоговый файл будет размером ~1,5 ГБ (или лучше).

Что я делаю не так? Что я упускаю из виду?

Подход

  • Обнулить CF: dd if=/dev/zero of=/dev/sdb bs=1M
  • Разбиение на разделы, форматирование, установка файлов, данных и т. д. (использовано около 1,5 ГБ)
  • Создать образ CF: dd if=/dev/sdb of=cf.img
  • Сжатие CF (с помощью gzip, bzip2, lzma и т. д.)

Примечания

  • Я обнуляю CF с помощью USB-носителя, подключенного к компьютеру с Windows 7. USB-устройство подключено к виртуальной машине под управлением Linux.

решение1

Отвечаю на свой собственный вопрос, но не уверен, почему так происходит.

Я попробовалдбан. Загрузил ISO как виртуальную машину и использовал опцию «wipe» (запись нуля). Один проход. После этого выполнил те же шаги, что были описаны ранее. И сжатие сработало НАМНОГО лучше. Мой сжатый образ был меньше 100 МБ.

Единственное, что я могу предположить сейчас, это то, что при использовании dd /dev/zero выводил что-то странное или данные неправильно записывались на Compact Flash.

Связанный контент