13

У меня есть файл ISO и DVD, записанный из этого файла ISO. Могу ли я проверить, что DVD содержит то же самое, что и файл ISO, и что с DVD все в порядке?

У меня есть инструменты, доступные на компакт-диске System Rescue.

6 ответов6

11

Следующая команда сравнивает содержимое двух двоичных файлов и печатает смещение первого отличающегося байта. Замените /dev/dvd на путь к устройству DVD (/dev/cdrom , /dev/scd0 , /dev/hdc ,…).

cmp /dev/dvd /path/to/foo.iso

Я не уверен, что все DVD содержат указание того, где заканчиваются данные (я думаю, что некоторые компакт-диски этого не делают); Вы можете ограничить сравнение размером файла изображения.

ls -l /path/to/foo.iso  # copy the file size, e.g. 123456789 bytes
cmp -n 123456789 /dev/dvd /path/to/foo.iso

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

md5sum /path/to/foo.iso
md5sum /dev/dvd     # if the size can be determined; otherwise:
head -c 123456789 /dev/dvd | md5sum
4

Поскольку этот вопрос не относится к конкретной ОС и пользователи Windows могут найти здесь свой путь, я полагаю, что относительно простой способ сделать это в Windows - это смонтировать ISO (особенно хорош OSFMount), а затем сравнить (например, с WinMerge).) корень дисковода CD/DVD с подключенным томом root:

winmerge d:\ e:\
3

Вот правильные шаги для проверки 256-й суммы ISO до и после записи.

определить iso sha256sum ..

$ sha256sum ubuntu-5.10-dvd-i386.iso
e41c0631f6f2c138a417b59bcb880fce

тогда определите размер iso в байтах ...

$ wc -c ubuntu-5.10-dvd-i386.iso  
3048179712

затем дд ваш CD / DVD-диск | затем подсчитать первые биты каждого файла для суммирования | затем прочитать его sha256sum

$ dd if=/dev/sr0 | head -c 3048179712 | sha256sum  
e41c0631f6f2c138a417b59bcb880fce

Замените /dev /sr0 на /dev /cdrom или другое имя диска в зависимости от системы.

Для лучшего опыта DD и для просмотра прогресса dd в режиме реального времени без необходимости написания скрипта используйте dcfldd для экспертизы dd (dcfldd также может портировать на 2 разных выхода).

sudo apt-get install dcfldd

(бесстыдно похищенный из статьи на unbutu.com)

2

Я предполагаю из вашего поста, что вы работаете в Linux.

См. Эту статью: Проверьте записанный образ CD/DVD в Linux.

Основная идея проста:

cat iso-file.iso | md5sum
dd if=/dev/hdc | md5sum
1

В Windows установите VCdControlTool.exe и WinMerge (не забудьте добавить его в системный путь, в установщике есть специальный флажок).

Вставьте DVD, обычно смонтированный на d:

Смонтируйте .iso с помощью VCdControlTool.exe, например, на z:

Из cmd запустите:

winmergeu.exe /r d:\ z:\

Это может занять некоторое время.

Предостережение: WinMerge не хватает памяти с большими файлами.

0

В Windows сравнить уже записанный DVD или CD с файлом ISO очень легко с помощью программы для пожертвований " ImgBurn ". Помог мне тонну в прошлом!

Еще нужно найти что-то похожее для OS X / macOS, потому что мне кажется, что вышеупомянутые методы для Linux / Unix там не работают.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .