Сравнивая два DVD

Как сравнить два DVD? Я имею в виду действительно бинарное сравнение?

Проблема: у меня есть два DVD с программой, которая должна быть одинаковой. Но я подозреваю, что один DVD будет изменен. Размеры файлов и папок одинаковы, что не означает, что содержимое должно быть одинаковым.

1
задан 24 March 2019 в 11:49

4 ответа

Вставьте DVD в дисковод и подождите, пока Ubuntu автоматически смонтирует его, затем перейдите в каталог, где смонтирован DVD:

$ cd /media/barbara/mydvd

Создайте файл контрольной суммы, который содержит контрольные суммы всех файлов на DVD:

[ 111]

Обратите внимание, что приведенная выше команда правильно обрабатывает имена файлов с пробелами. Затем замените DVD на второй и проверьте только что созданные контрольные суммы:

$ sha1sum -c /tmp/myiso.sha1

Если есть разница, sha1sum выведет сообщение об ошибке.

0
ответ дан 24 March 2019 в 11:49

Попробуйте VBinDiff (Visual Binary Diff)

VBinDiff (Visual Binary Diff) отображает файлы в шестнадцатеричном и ASCII (или EBCDIC) формате. Он также может отображать два файла одновременно и выделять различия между ними. В отличие от diff, он хорошо работает с большими файлами (до 4 ГБ).

Режим работы с одним файлом был вдохновлен утилитой LIST от 4DOS и друзей. Хотя less обеспечивает хороший линейно-ориентированный дисплей, он не имеет ничего общего с шестнадцатеричным дисплеем LIST. (Правда, вы можете передать файл через hexdump, но это невероятно неэффективно для файлов объемом в несколько гигабайт.) VBindiff

Загрузка и другие информационное посещение VBindiff и Github

0
ответ дан 24 March 2019 в 11:49

Вы можете использовать обычные cmp.

Если DVD должен быть идеальной копией 1: 1 (абсолютно идентичной), вы можете сравнить ISO.

cmp dvd1.iso dvd2.iso

В противном случае для каждого файла в отдельности

cd /mnt/cdrom1
find -type f -exec cmp {} /mnt/cdrom2/{} \;

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

0
ответ дан 24 March 2019 в 11:49

Попробуйте:

  1. Вставьте и смонтируйте первый DVD
  2. Откройте терминал
  3. Тип cd ${PATH_OF_YOUR_DVD_MOUNT_POINT} (заменив $ {PATH_OF_YOUR_DVD_MOUNT_POINT} на путь точка монтирования DVD)
  4. Введите find . -type f -exec md5sum \{\} \; >/tmp/md5sums.txt и дождитесь его завершения (может занять некоторое время)
  5. Введите cd, чтобы вернуться в домашний каталог
  6. Размонтировать и извлеките ваш DVD
  7. Вставьте и смонтируйте второй DVD
  8. Снова введите cd ${PATH_OF_YOUR_DVD_MOUNT_POINT} (на этот раз заменяя точку монтирования второго DVD)
  9. Введите md5sum --check --quiet /tmp/md5sums.txt и наблюдайте выходные данные

Вы получите список файлов, которые НЕ были в двоичном эквиваленте.

ПРИМЕЧАНИЕ : добавлено исправление от пользователя Germar , которое по какой-то причине не было принято в рецензировании.

0
ответ дан 24 March 2019 в 11:49

Другие вопросы по тегам:

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