Различное значение хэша большого файла rsynced на centos и ubuntu?

Я обработал большой файл с удаленных centos на локальный ubuntu с помощью

rsync -avzP user@<remote-ip>:/path/to/file . 

Он сообщил, что передача прошла успешно:

 sent 30 bytes received 257,293,476 bytes 1,296,188.95 bytes/sec total size is 8,217,194,015 speedup is 31.94 

Насколько я знаю, rsync автоматически проверяет, что передача прошла успешно с хеш-чеками после завершения передачи.

Из любопытства я вычислил хэши md5 на centos и ubuntu, и они разные:

 centos: 0faa300b7b0b81bfe65199da932eb6e2 ubuntu: f3a0fcc59516d4e68fd207bdbb1fc169 

Оба хэша вычисляются с помощью md5sum :

 centos> md5sum --version md5sum (GNU coreutils) 8.22 ubuntu> md5sum --version md5sum (GNU coreutils) 8.25 

Таким образом, инстанции немного отличаются друг от друга, но могут ли они привести к другим значениям хэшей?

Изменить :

Здесь ls -l вывод:

 centos: -rw-rw-r--. 1 username username 8217194015 ubuntu: -rw-rw-r-- 1 username username 8217194015 

Выпуск Centos включает таинственную точку, о которой я никогда не слышал. (может ли это быть связано с lvm? lvm используется на этом centos)

Изменить 2 :

Проверка md5sum -b приводит к различным результатам:

 centos: 0faa300b7b0b81bfe65199da932eb6e2 ubuntu: 6d799f6981066d82c7f861576b4980e1 

Какой хэш-алгоритм использует rsync? Согласно wikipedia rsync использует md5 для проверки того, является ли кусок одинаковым:

Получатель разбивает свою копию файла на куски и вычисляет две контрольные суммы для каждого фрагмента: хеш MD5 и слабее, но проще вычислить «скользящую контрольную сумму». Он отправляет эти контрольные суммы отправителю. Отправитель быстро вычисляет текущую контрольную сумму для каждого фрагмента в своей версии файла; если они отличаются, их необходимо отправить. Если они одинаковы, отправитель использует более дорогостоящий MD5-хэш, чтобы проверить, что куски одинаковы.

2 Solutions collect form web for “Различное значение хэша большого файла rsynced на centos и ubuntu?”

Точка . означает, что файл имеет контекст SELinux, так как каждый файл в CentOS (и никаких файлов на Ubuntu), который может каким-то образом запутать md5sum . Вы пытались запустить md5sum с помощью b переключателя, чтобы убедиться, что он не будет искажен преобразованиями «в текст»?

Здесь ошибочное предположение:

Насколько я знаю, rsync автоматически проверяет, что передача прошла успешно с хеш-чеками после завершения передачи.

Rsync использует контрольные суммы для определения необходимости синхронизации. Но Rsync не перечитывает созданную копию, она доверяет ядру сообщать об ошибках. Итак, вывод прост: файлы не идентичны. Может быть только один бит, может быть больше. Сколько несоответствий есть, контрольная сумма не говорит вам.

  • Как отредактировать файл и сохранить его список управления доступом / контекст безопасности SELinux?
  • SELinux: определение каталога отказавшего файла
  • Как настроить последние стабильные политики SELinux в Debian 8.7?
  • SELinux - обходное решение с использованием audit2allow?
  • SELinux не регистрируется нигде
  • groupadd при записи изменений в / etc / group
  • Fedora 15: Twitter в Google Chrome
  • Какой процесс / программа создает / записывает файл, к которому перенаправляется ввод-вывод?
  • Отключите SELinux в apache, чтобы остановить предупреждение.
  • Каков правильный способ установки контекста SELinux в RPM .spec?
  • Сделать все контексты SELinux постоянными
  • Linux и Unix - лучшая ОС в мире.