Почему мои одинаково подготовленные флешки отличаются на один байт?


15

У меня есть две идентичные флешки ( TrekStor 16GB ), подготовленные следующим образом с изображением c't bankix .

  1. Подготовка с использованием GParted :

    • Удалил существующий раздел
    • Создана новая таблица разделов DOS
    • Отформатировал флешку с FAT32, основной раздел
  2. Загрузил изображение на флешку через usb-creator-kde.

Итак, я выполнил одинаковую процедуру для обеих флешек, но одна загружается, а другая вылетает с сообщением об ошибке:

(initramfs) mount: mounting /dev/loop0 on //filesystem.squashfs failed: No such device
Can not mount /dev/loop0 (/cdrom/casper/filesystem.squashfs) on //filesystem.squashfs

Затем я попытался сравнить их с помощью sudo cmp /dev/sdb /dev/sdc. Это привело к:

/dev/sdb /dev/sdc differ: byte 441, line 5

Что здесь не так, и как мне это исправить?


Вы можете попробовать скопировать рабочий поверх другого, используя dd, и посмотреть, поможет ли это. Или вы можете просто использовать sfdisk, чтобы скопировать таблицу разделов из хорошей и перейти оттуда.
Анджело

Он сразу же сообщает вам, в чем проблема - filesystem.squashfs по какой-то причине недействителен, иначе вы неправильно настроили процесс загрузки. Это файл изображения - сжатый - это вся ваша корневая файловая система. Но ... ваш initramfs думает, что он находится на /cdrom. И это, по-видимому, пытается установить себя на себя? Это вещь initramfs - держу пари, это хорошо. Может быть, вы подключили обе палочки к компьютеру одновременно? Или, возможно, у вас есть другие дублированные настройки, которые должны были быть уникальными во время установки. Держитесь подальше от создателей живой системы - это проблема.
mikeserv

Ответы:


30

Хотя я не знаю, почему происходит сбой (плохая карта? Испорченное изображение?), Обычно подозревают различия в «идентично» созданных файловых системах, будь то ISO9660 или иным образом, это отметки времени , например, для времени создания. Или случайная метка файловой системы по умолчанию . Если вы хотите идентичные данные на обоих, ddпоместите хорошее изображение на другую флешку и проверьте их контрольные суммы (md5sum или другие; подойдут любые).

Да, и предположение из названия вашего вопроса не имеет места. Это не только один байт, который отличается. cmpтолько говорит вам, что сначала отличается, а затем выходит.


22

По всей вероятности, они не отличаются только одним байтом. Это только первый отличающийся байт. Запустите, cmp -l dev/sdb /dev/sdcчтобы перечислить все различия.

Первые 512 байт флешки - это ее загрузочный сектор . Смещение 441 (440, если вы начинаете нумерацию с 0) - это местоположение подписи диска, которая должна однозначно идентифицировать диск (для выгоды Windows - я не помню, чтобы Linux заботился). Следует ожидать, что они будут отличаться. Предполагается, что файлы на флешке должны быть идентичными, а не метки диска (или, кстати, временные метки файлов).

Убедитесь, что сбой на флешке имеет правильное содержимое файла. Это может быть физически повреждено.

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.