Плохое сжатие изображения с компактной флэш-памятью, даже после заполнения 0

465
Josh

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

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

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

Подход

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

Заметки

  • Я обнуляю CF с помощью USB-ридера, подключенного к Windows 7. Устройство USB подключено к виртуальной машине под управлением Linux.
0
Вы открыли изображение в шестнадцатеричном редакторе? Dennis 11 лет назад 0
Я знаю, что это не то, что вы хотите сделать, а почему бы просто не создать архив файлов tar или cpio, а затем сжать его? Scott 11 лет назад 0
@ Scott гораздо проще иметь возможность вставлять CF и нажимать «записать» и иметь * именно * то, что вам нужно (все разделы, загрузчик и т. Д.) Без дополнительной суеты конфигурации. Josh 11 лет назад 0

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

0
Josh

Answering my own question, but not sure why this is the case.

I tried out dban. Booted the ISO as a virtual machine, and used the "wipe" (write zero) option. Single pass. Followed the same steps afterwards as previously outlined. And the compression worked a LOT better. My compressed image was under 100MB.

The only thing I can guess now is that when using dd, /dev/zero was outputting something funny, or it was not being correctly written to the compact flash.

Похожие вопросы